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);
}