如何判断文件是否为空

  百度一下判断文件是否为空,大部分的答案都是用 

FILE *fp;

char = ch;

fp = fopen("D:\\nihao.txt","w");

ch = fgetc(fp);

if(ch==EOF)

      printf("为空");

else

     printf("不为空");

这个我试验了,没用。 EOF是宏定义的值  值为-1;  不属于字符

应该用 fread(ch,sizeof(char),1,fp)这个  若文件读取成功返回真  否则 为假

算法:

if(!fread(ch , sizeof(char) , 1 , fp))

    printf("为空");

else

   printf("不为空");

最后不要忘了关闭文件指针:  fclose(fp);

   

你可能感兴趣的:(c语言学习)