进程通信(命名管道单向通信)
client.c: 1 #include2#include 3#include 4#include 5#include 6#include 7#include 8#define _PATH_ "./tmp" 9#define SIZE 100 10int main() 11 { 12 if(mkfifo(_PATH_,0666|S_IFIFO)<0) 13 { 14 perror("mkfifo"); 15 return -1; 16 } 17 intfd=open(_PATH_,O_WRONLY); 18 if(fd<0) 19 { 20 perror("open"); 21 return -1; 22 } 23 char buf[SIZE]; 24 memset(buf,'\0',SIZE); 25 while(1) 26 { 27 scanf("%s",buf); 28 write(fd,buf,strlen(buf)); 29 } 30 close(fd); 31 return 0; 32 } server.c: 1 #include 2 #include 3 #include 4 #include 5 #include 6 #include 7#include 8#define _PATH_ "./tmp" 9#define SIZE 100 10int main() 11 { 12 intfd=open(_PATH_,O_RDONLY); 13 if(fd<0) 14 { 15 perror("open"); 16 return -1; 17 } 18 char buf[SIZE]; 19 while(1) 20 { 21 22 memset(buf,'\0',SIZE); 23 read(fd,buf,sizeof(buf)); 24 printf("%s\n",buf); 25 } 26 close(fd); 27 return 0; 28 } Makefile: 1.PHONY:all 2 all:client server 3 server:server.c 4 gcc -o $@ $^ 5client:client.c 6 gcc -o $@ $^ 7.PHONY:clean 8clean: 9 rm -f client server tmp
创新互联公司的客户来自各行各业,为了共同目标,我们在工作上密切配合,从创业型小企业到企事业单位,感谢他们对我们的要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。专业领域包括网站建设、成都网站建设、电商网站开发、微信营销、系统平台开发。
文章题目:进程通信(命名管道单向通信)
文章起源:http://cdiso.cn/article/jpgesj.html