今天调试一个有关管道的程序,半天没捣鼓出来,请教一下高手:
管道建立成功,就是在open是出错了,打不开~
错误提示是:No such device or address
这是什么毛病啊?高手指点一下贝,多谢了
#define WFIFO "writefifo"
char buf[256];
int w_fd;
struct stat stat_buf;
printf("begin to create writefifo\n";
int ret=mkfifo(WFIFO,0666);
printf("ret=%d\n",ret);
if(ret==-1){
printf("Fail to create fifo %s:%s\n",WFIFO,strerror(errno));
exit(-1);
}
strcpy(buf,s);
printf("buf:%s\n",buf);
printf("get w_fd\n";
w_fd=open(WFIFO,O_WRONLY|O_NONBLOCK);
printf("writefifo's fd:%d\n",w_fd);
if(w_fd==-1){
printf("Fail to open fifo %s:%s\n",WFIFO,strerror(errno));
exit(-1);
}
这是中间的管道代码,就是在w_fd=open(WFIFO,O_WRONLY|O_NONBLOCK);出的错误,
错误提示为:Fail to open writefifo:No such device or address;
要是这句改为w_fd=open(WFIFO,O_RDONLY|O_NONBLOCK);就没毛病了,但是我想以写方式打开~
哪位高手指点一下贝~~

