#include <stdio.h> #include <unistd.h> #include <stdlib.h> #include <string.h> int main() { int data_processed; int file_pipes[2]; const char some_data[] = "123"; char buffer[BUFSIZ + 1]; memset(buffer, ' ', sizeof(buffer)); if(pipe(file_pipes) == 0) { data_processed = write(file_pipes[1], some_data, strlen(some_data)); printf("Wrote %d bytes ", data_processed); data_processed = read(file_pipes[0], buffer, BUFSIZ); printf("Read %d bytes: %s ", data_processed, buffer); exit(EXIT_SUCCESS); } exit(EXIT_FAILURE); }
0管道为读管道
1管道为写管道