pipe函数的原型是:
int pipe(int file_descriptor[2]);
它需要的头文件是:#include
pipe函数的参数是一个有两个文件描述符(整型)元素的数组,pipe函数在数组中填入两个新的文件描述符后返回0,失败则返回1。
怎么用呢,成功的调用pipe函数后,向file_descriptor[1]写入的所有数据,可以从file_descriptor[0]读出来。使用情景:在一个调用fork的程序中,利用pipe从子进程和父进程之间传递数据。
注意:pipe函数的数组参数是文件描述符,不是文件流,所以不能用C标准库函数,而是应该用read和write系统调用来读写数据。
示例:
int file_pipes[2];
if(pipe(file_pipes)==0) {
// 向file_pipes[1]写数据
// 从file_pipes[0]读数据
}
关于Linux管道的一切