Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1792747
  • 博文数量: 335
  • 博客积分: 4690
  • 博客等级: 上校
  • 技术积分: 4341
  • 用 户 组: 普通用户
  • 注册时间: 2010-05-08 21:38
个人简介

无聊之人--除了技术,还是技术,你懂得

文章分类

全部博文(335)

文章存档

2016年(29)

2015年(18)

2014年(7)

2013年(86)

2012年(90)

2011年(105)

分类: C/C++

2012-03-12 22:22:04

  1. #include "apue.h"
  2. int
  3. main(void)
  4. {
  5.     int n;
  6.     int fd[2];
  7.     pid_t pid;
  8.     char line[MAXLINE];

  9.     if (pipe(fd) < 0)
  10.         err_sys("pile error");
  11.     if (( pid = fork() ) < 0)
  12.     {
  13.         err_sys("fokr error");
  14.     } else if ( pid > 0) {
  15.         close(fd[0]) ; /* parent close read pile */
  16.         write(fd[1],"hello world",12);
  17.     } else {
  18.         close(fd[1]); /* child read write pile */
  19.         n=read(fd[0],line,MAXLINE);
  20.         write(STDOUT_FILENO,line,n);
  21.     }
  22.     exit(0);
  23. }

   gcc  -Wall -o c15-1 c15-1.c error.c
./c15-1 
ubuntu@ubuntu-virtual-machine:~/Desktop/apue$ hello world
父进程关闭读端,子进程关闭写端,然后将父进程的输出写入子进程的输入,然后进行打印。







阅读(940) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~