本文共 664 字,大约阅读时间需要 2 分钟。
pipe():创建一个新的匿名管道
例子中子进程必须等待父进程写入管道之后才能读。
thePipe[0]代表管道的输出,应用程序读它。
thePipe[1]代表管道的输入,应用程序写它。
#include#include #include #include #define MAX_LINE 80int main(){ int thePipe[2], ret; char buf[MAX_LINE+1]; const char *testbuf = {"a test string."}; if(pipe(thePipe) == 0) { if(fork() == 0) //子进程 { ret = read(thePipe[0], buf, MAX_LINE); buf[ret] = 0; printf("Child read %s\n", buf); } else //父进程 { ret = write(thePipe[1], testbuf, strlen(testbuf)); ret = wait(NULL); } } }
转载地址:http://fshvb.baihongyu.com/