pip.c

来自「操作系统课程设计」· C语言 代码 · 共 55 行

C
55
字号
#include <stdio.h>#include <string.h>#include <unistd.h>#define BUFSIZE  10int main(void){	char ch,dh,eh;	int p[2];//文件描述符	pid_t childpid;		if(pipe(p) == -1)//创建管道	{		perror("pipe call");		return -1;	}	if((childpid = fork()) == -1)//创建子进程	{			perror("fork call");			return -1;			}	if(childpid!=0)//父进程	{		close(p[0]);//关闭读文件		do		{			ch = getchar();			write(p[1],&ch,1);//向管道写		}while(ch!='x');//遇到'x'则结束	}	else if(childpid==0)//子进程	{		close(p[1]);//关闭写文件		while(1)		{			read(p[0],&dh,1);//从管道读			if(dh == 'x')			{				printf("\n");				return 0;			}			else if(dh>='a'&&dh<='z')			{				eh = (char)((int)dh - 32);//转化成大写输出			      printf("%c",eh);			 }		  	else {		  		printf("%c",dh);		  	}		}			}}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?