不知道是代码问题还是系统问题 open()打开文件的文件返回值都是0 各位帮忙看看 出题出在哪里?谢谢!!
代码如下:
#include
#include
int
main(void)
{
int fd1;
int fd2;
if(fd1=open("a.c",O_RDWR,O_CREAT)<0)
printf("open failed!!\n");
if(fd2=open("/home/farmerbee/doc/rpm",O_RDONLY)<0)
printf("open
failed!!\n");
if(fd1>=0&&fd2>=0)
printf("file
id:%d,%d",fd1,fd2);
return 0;
}
优先级的问题,=的优先级没有<高
所以fd1得到的值是后面两者比较的值,而不是文件描述符
if((fd1=open("a.c",O_RDWR,O_CREAT))<0) 就可以了
!!!!!!!!!!!!
阅读(385) | 评论(0) | 转发(0) |