您好,登錄后才能下訂單哦!
#include <unistd.h> #include <stdio.h> #include <sys/types.h> #include <stdlib.h> #include <errno.h> int main(int argc,char *argv[]) { int n, fd[2]; pid_t pid; char buffer[25]; //緩沖區 if(pipe(fd)<0) //創建一個管道,兩個文件描述符在fd數組中 { printf("創建管道失敗!\n "); exit(0); } if((pid=fork())<0) //創建一個子進程 { printf("創建子進程失敗!\n "); exit(0); } else if (pid>0) //父進程 { close(fd[0]); write(fd[1],"This is a pipe test!\n",22); //向管道寫入數據,注意回車換行符 } else //子進程 { close(fd[1]); //關閉 n = read(fd[0],buffer,25); //從通道中讀出數據 printf("%s",buffer); //將數據寫到標準輸出設備 } exit(0); }
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。