当前位置: 代码迷 >> 综合 >> C语言文件读取 判断fopen结果时 犯的小错误
  详细解决方案

C语言文件读取 判断fopen结果时 犯的小错误

热度:80   发布时间:2023-11-01 09:00:25.0
    if( (fp = fopen("./demo","r") == NULL ) ){printf("Fail to open file!\n");exit(0);}

如上,在判断fopen的结果时,小括号标错位置了, 使得fp的值是 fopen返回值与NULL判断后的结果,要么为0要么为1,都不是我们想要的文件指针。

修改小括号的位置如下,先将fopen 的返回值赋给fp,再进行fp 与 NULL的比较。然后,现象正常。

    if ( (fp = fopen("./demo.txt","r")) == NULL ){printf("Fail to open file!\n");exit(0);}