1#include<stdio.h>2#include<sys/wait.h>3#include<unistd.h>4#include<string.h>5#include<stdlib.h>6intmain()7{8intpipefd[2];9if(pipe(pipefd)==-1)10{11perror("pipe");12return-1;13}14pid_tpid=fork();15if(pid<0)16{17perror("pid");18return-1;19}20elseif(pid==0)21{22close(pipefd[0]);23charbuf[20]="weareyoung";24inti=0;25while(i<10)26{27write(pipefd[1],buf,strlen(buf));28sleep(1);29i++;30}31exit(1);32}33else34{35close(pipefd[1]);36charbuf[200];37intj=0;38while(j<10)39{40memset(buf,'\0',sizeof(buf));41ssize_tsize=read(pipefd[0],buf,sizeof(buf));42if(size>0)43printf("%s\n",buf);44j++;45}46if(waitpid(pid,NULL,0)==pid)47{48printf("waitsuccess\n");49}50}51return0;52}Makefile:1Pipe:pipe.c2gcc-o$@$^3.PHONY:clean4clean:5rm-fpipe