激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

Linux|Centos|Ubuntu|系統進程|Fedora|注冊表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服務器之家 - 服務器系統 - Linux - Linux管道通信C語言編程示例

Linux管道通信C語言編程示例

2019-09-09 16:00Linux之家 Linux

這篇文章主要介紹了Linux管道通信C語言編程示例,本文講解了管道的定義,并分別講解了無名管道和有名管道:FIFO,需要的朋友可以參考下

一、定義

管道是單向的、先進先出的。它將一個程序的輸入和另一個程序的輸出連接起來。數據被一個進程讀出后,將被從管道中刪除。分為無名和有名管道兩種。前者用于父進程和子進程間的通信,后者用于同一系統的兩個進程間通信。
 
二、無名管道

 

復制代碼

代碼如下:


int pipe(int fd[2]);


   其中,fd[0]用于讀管道,fd[1]用于寫管道。若成功則返回零,否則返回-1,錯誤原因存于errno中。

 

Linux管道通信C語言編程示例

三、有名管道:FIFO

 

復制代碼

代碼如下:


int mkfifo(const char* pathname,mode_t mode)


open時使用O_NONBLOCK,訪問要求無法滿足則立即出錯返回。erron是ENXIO。
 
例子:

復制代碼

代碼如下:


fread.c //讀文件</p> <p>#include<errno.h>
#include<memory.h>
#define FIFO "myfifo" 
main(){
int fd;
char buff[100];
if(access(FIFO,F_OK) == -1){
mkfifo(FIFO,0777); 
}
fd=open(FIFO,O_RDONLY|O_NONBLOCK); //設置非阻塞打開,否則當沒有輸入時,會阻塞在read函數 </p> <p> int num;
while(1){
memset(buff,'\0',100); //如不清空最后的字符會出現亂碼
if((num=read(fd,buff,100))==0){
printf("waiting.....\n");
sleep(1);
continue;
}
printf("read %d in fifo , it's %s",num,buff);
sleep(1);
}
}</p> <p>
fwrite.c //寫文件</p> <p> </p> <p>#include<stdio.h>
#include<fcntl.h>
#include<memory.h>
#define FIFO "myfifo"
main(){
int fd;
char buff[100];
memset(buff,'\0',100);
scanf("%s",buff);
if(access(FIFO,F_OK) == -1){
mkfifo(FIFO,0777);
}
fd=open(FIFO,O_WRONLY);
int num;
num=write(fd,buff,strlen(buff));
printf("%d char is written! It's %s\n",num,buff);
}


4、管道關閉:用close()關閉相應的文件描述符即可。

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: h久久| 中文字幕国产亚洲 | 暖暖免费观看高清完整版电影 | 91av亚洲 | 成人免费淫片视频软件 | 7777在线视频免费播放 | 一级毛片视频播放 | 欧美日韩视频第一页 | 色视频在线播放 | 女人久久久www免费人成看片 | 成人免费一区二区三区视频网站 | 精品中文字幕在线观看 | 免费视频爱爱太爽了 | 久草在线观看首页 | 久久久www成人免费精品 | 视频一区国产 | 午夜视频大全 | 国产精品视频久久久 | 日本高清在线免费 | 免费淫视频 | 国产一区二区三区精品在线观看 | 日日鲁夜夜视频热线播放 | 久久99精品久久久久久236 | 久久国产乱子伦精品 | 国产亚洲精品视频中文字幕 | 久久精品亚洲欧美日韩精品中文字幕 | 黄色高清视频网站 | 免费观看亚洲视频 | www.理论片| 免费网址黄 | 色中色综合网 | 日本aⅴ在线 | 一级毛片大片 | 色婷婷av一区二区三区久久 | 国产精品99久久久久久久vr | 国内精品国产三级国产a久久 | 日韩在线黄色片 | 国产福利视频 | 国产一区二区精品免费 | 羞羞草视频| 日本黄色a视频 |