zoukankan      html  css  js  c++  java
  • 编写程序,子进程通过管道向父进程发出字符串"ok".

    编写程序,子进程通过管道向父进程发出字符串"ok".

     1 #include <stdio.h>
     2  #include <stdlib.h>
     3  #include <unistd.h>
     4  int main(void) {
     5      int data_processed; //用于记录已经处理的数据
     6      int file_pipes[2];  //定义两个文件描述符
     7      char buffer[BUFSIZ + 1];        //定义一个缓冲区,以便从管道中读取数据
     8      const char * some_data = "OK"; //定义一个将要写入管道中的字符串
     9      memset(buffer, '\0', sizeof(buffer)); //初始化读取缓冲区
    10      int fork_result;
    11      if (pipe(file_pipes) == 0) {          //创建管道
    12          fork_result=fork();
    13          if(fork_result==-1){
    14              fprintf(stderr,"创建子进程失败");
    15              exit(EXIT_FAILURE);
    16          }
    17          if(fork_result==0){  //说明我们在子进程中
    18              data_processed = read(file_pipes[0], buffer, BUFSIZ);
    19              printf("子進程读出%d个字符。内容是:%s\n",data_processed,buffer);
    20          }else{               //说明我们在父进程中
    21              data_processed = write(file_pipes[1], some_data, sizeof(some_data));
    22              printf("父進程写入%d个字符\n", data_processed);
    23          }
    24          exit(EXIT_SUCCESS);
    25      }
    26      return EXIT_SUCCESS;
    27  }
    28  
  • 相关阅读:
    习题三 答案
    习题二 答案
    Python开发【第三篇】:Python基本数据类型
    习题四 答案
    第一个python程序-判断登陆用户名和密码是否正确
    BFPRT算法 查找第k小的数
    设计模式----单例模式
    设计模式----原型模式
    非本地跳转
    链接器如何使用静态库解析引用
  • 原文地址:https://www.cnblogs.com/kissazi2/p/2868278.html
Copyright © 2011-2022 走看看