Computer >> Máy Tính >  >> Lập trình >> C ++

Chương trình C cho pipe trong Linux

Ở đây, chúng tôi sẽ tạo chương trình C cho pipe trong Linux . Trong chương trình này, chúng ta sẽ đọc một số văn bản từ luồng đầu vào và sau đó in nó ra màn hình đầu ra.

Trước tiên, chúng ta hãy tìm hiểu những kiến ​​thức cơ bản về ống dẫn trong Linux

Đường ống được sử dụng để truyền dữ liệu, nó có thể được sử dụng để giao tiếp giữa tiến trình / lệnh / chương trình để chuyển đầu ra tiêu chuẩn giữa hai trong hệ thống dựa trên Linux hoặc Unix.

Một điều quan trọng cần lưu ý là đường ống là một chiều, tức là dữ liệu có thể chảy từ trái sang phải hoặc từ phải sang trái trong chương trình.

Ở đây, chúng tôi sẽ tạo một đường ống sẽ đọc đầu vào từ người dùng và in nó ra màn hình đầu ra. Việc triển khai nhận một mảng có kích thước 2 được sử dụng để nhận đầu vào arr [0] và trả về đầu ra arr [1].

Chương trình C dành cho ống dẫn trong Linux

Ví dụ

#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);
}

Đầu ra

input: TutorialsPoint
TutorialsPoint