⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 pipe.c

📁 进程间通过管道通信,父进程传消息给子进程
💻 C
字号:
//父进程传递消息给子进程//#include <apue.h>#include <sys/wait.h>#include <sys/types.h>#include <stdio.h>#include <unistd.h>	//pipe#define MAXLINE 1024	//??至少4096int main(void){	int n;	int fd[2];	pid_t pid;	char line[MAXLINE];	char line2[MAXLINE];	int status;	if(pipe(fd) < 0) 		perror("pipe error");	if((pid = fork()) < 0) {		perror("fork error");	}	else if (pid > 0) {	//父进程		//close(fd[0]);				//把数据写入管道中		write(fd[1], "I am parent.", 12);				//等待子进程结束		if( wait(&status) )			perror("wait error");		//perror(status);				//从管道中读数据		read(fd[0], line2, MAXLINE);	//阻塞直到有数据写入管道		printf("line2 : %s\n", line2);	}	else {	//子进程		//close(fd[1]);		n = read (fd[0], line, MAXLINE);		//write(STDOUT_FILENO, line, n);		printf("line : %s\n", line);		//write(fd[1], "I am child.", 11);			}		return 1;}

⌨️ 快捷键说明

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