C 每个未声明的标识符只报告一次?

C 每个未声明的标识符只报告一次?,c,process,pipe,C,Process,Pipe,我正在写一个c程序,涉及孩子和家长之间通过定向管道进行通信 以下是我的部分代码: char writemsg[BUFFER_SIZE] = "Sugar Lover"; char readmsg[BUFFER_SIZE]; char parrecieve[BUFFER_SIZE]; char childrecieve[BUFFER_SIZE+1]; int fd[2]; int fd2[2]; pid_t pid; if (pipe(fd) == -1|| pi

我正在写一个c程序,涉及孩子和家长之间通过定向管道进行通信

以下是我的部分代码:

 char writemsg[BUFFER_SIZE] = "Sugar Lover"; 
  char readmsg[BUFFER_SIZE];
  char parrecieve[BUFFER_SIZE];
  char childrecieve[BUFFER_SIZE+1];
  int fd[2];
  int fd2[2];
  pid_t pid;

  if (pipe(fd) == -1|| pipe(fd2) == -1) {
    printf("Pipe failed");
    return 1;
  }
  pid = fork();
  if (pid < 0) { /* error occurred */
    printf( "Fork Failed");
    return 1;
  }

  if (pid > 0) { /* parent process */
    int i =0;
    close(fd[READ_END]);/* close the unused end of the pipe */
    while(writemsg[i] !='\0'){
      write(fd[WRITE_END],&writemsg[i] , sizeof(char)); 
      i++;
    }
    close(fd[WRITE_END]);
    i = 0;
    close(fd2[WRTIE_END]);
    while(read(fd2[READ_END], &parrecieve[i], sizeof(char))!=0){
      printf("%c", parrecieve[i]);
      i++;

    }

    close(fd2[READ_END]);


  }

谁能告诉我为什么?谢谢

只需将
WRTIE\u END
重命名为
WRITE\u END


更仔细地阅读错误消息,并尝试理解它们。

描述性标题FTW!赞成。。我已经编了几个小时的程序,现在太累了,我自己都找不到打字错误:(谢谢tho!@NobWong:这是真的:)你的经验越多,有些事情就越明显:)
 close(fd2[WRTIE_END]);