Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> C++

โปรแกรม C สำหรับไพพ์ใน Linux


ที่นี่ เราจะสร้างโปรแกรม C สำหรับไพพ์ใน Linux . ในโปรแกรมนี้ เราจะอ่านข้อความจากอินพุตสตรีมแล้วพิมพ์ไปที่หน้าจอเอาต์พุต

ขั้นแรก มาเรียนรู้พื้นฐานเกี่ยวกับ ท่อ . กัน ในลินุกซ์

ท่อ ใช้ในการถ่ายโอนข้อมูล สามารถใช้สำหรับการสื่อสารระหว่างกระบวนการ/ คำสั่ง/ โปรแกรมสำหรับการถ่ายโอนเอาต์พุตมาตรฐานระหว่างสองระบบในระบบ Linux หรือ Unix

สิ่งสำคัญประการหนึ่งที่ควรทราบคือไพพ์เป็นทิศทางเดียว กล่าวคือ ข้อมูลสามารถไหลจากซ้ายไปขวาหรือจากขวาไปซ้ายในโปรแกรม

ที่นี่ เราจะสร้างไพพ์ที่จะอ่านอินพุตจากผู้ใช้และพิมพ์ไปยังหน้าจอเอาต์พุต การใช้งานใช้อาร์เรย์ขนาด 2 ซึ่งใช้รับอินพุต arr[0] และส่งคืนเอาต์พุต arr[1]

โปรแกรม C สำหรับไพพ์ใน Linux

ตัวอย่าง

#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