Linux 中用於管道操作的 C 語言程式


接下來,我們將建立一個在 Linux 中用於管道操作的 C 語言程式。在此程式中,我們將從輸入流中讀取一些文字,然後將其列印到輸出螢幕上。

首先,讓我們瞭解 Linux 中管道的基本知識。

管道用於傳輸資料,可用於過程/命令/程式之間的通訊,以便在基於 Linux 或 Unix 的系統中傳輸兩個管道間的標準輸出。

需要注意的一件重要事情是管道是單向的,即資料可以從左向右流動或從右向左流動。

在此,我們將建立一個管道來讀取使用者輸入並將其列印到輸出螢幕。該實現採用大小為 2 的陣列,用於獲取輸入 arr[0] 和返回輸出 arr[1]。

Linux 中用於管道操作的 C 語言程式

示例

 即時演示

#include <errno.h>
#include<string.h>
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
#include <sys/wait.h>
#include <unistd.h>
int main(){
   int Pipe[2];
   char string[100];
   if (pipe(Pipe) == -1){
      perror("Filed to create pipe");
      exit(1);
   }
   scanf("%s", string);
   write(Pipe[1], string, strlen(string)+1);
   printf("\n");
   read(Pipe[0], string, 5);
   printf("%s", string);
}

輸出

input: TutorialsPoint
TutorialsPoint

更新時間:17-7-2020

2K+ 次瀏覽

開啟 職業生涯

透過完成此課程獲得認證

開始
廣告
© . All rights reserved.