#include <unistd.h> #include <stdio.h> #include <stdlib.h> #include <errno.h> int main(void) { int fd[2]; // 文件描述符 char writebuf[] = "this is a test!\n"; //写缓冲区 char readbuf[20]; //读缓冲区 if((pipe(fd)) < 0) //创建管道 { printf("创建管道失败!\n"); exit(0); } write(fd[1],writebuf,sizeof(writebuf) ); //向管道写入端写入数据 read(fd[0], readbuf, sizeof(writebuf) ); //从管道读出端读出数据 printf ("%s",readbuf ); //输出字符串 printf ("管道的读fd是%d,管道的写fd是%d \n", fd[0], fd[1]) ; //打印管道描述符 close(fd[0]); // 关闭管道的读出端文件描述符 close(fd[1]); // 关闭管道的写入端文件描述符 return 0; }
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。