文章目录
有名管道的创建
方法1:用shell命令mkfifo创建有名管道
mkfifo 文件名
方法2:使用函数mkfifo
#include <sys/types.h>
#include <sys/stat.h>
int mkfifo(const char *pathname, mode_t mode);
功能:
创建一个有名管道,产生一个本地文件系统可见的文件pathname
参数:
**pathname:**有名管道创建后生成的文件,可以带路径
**mode:**管道文件的权限,一般通过八进制数设置即可,例如0664
返回值:
成功:返回 0
失败:返回 -1
代码:
#include<stdio.h>
#include<unistd.h>
#include<sys/types.h>
#include<sys/stat.h>
#include<stdlib.h>
#include<fcntl.h>
#include<errno.h>
int main(int argc,char const *argv[])
{
if(mkfifo("fifo_file",0664) == -1)
{
if(errno != EEXIST)
{
perror("fail to mkfifo");
exit(1);
}
}
return 0;
}
执行结果: