fread 返回 0
fread 函数一直返回 0,检查过读取的数量不会超过文件大小,错误发生在打开文件时错误。
错误代码如下:
1 | FILE *in_file, *out_file; |
正确应该是:
1 | FILE *in_file, *out_file; |
错误的原因在于没有使用括号,而比较运算符 == 的优先级比赋值运算符 = 要高。因此,错误的程序执行结果为,函数正常打开了文件,返回的文件指针与 NULL 相比为0,赋值给了 in_file, if 中的语句不会执行,因此误以为 in_file 是文件指针,实际上为0,所以无法读出数据。
原文链接:本人CSDN博客
- 标题: fread 返回 0
- 作者: cyang812
- 创建于 : 2018-07-25 21:14:05
- 更新于 : 2020-02-19 21:32:17
- 链接: https://blog.cyang.tech/2018/07/25/fread 返回 0/
- 版权声明: 本文章采用 CC BY-NC-SA 4.0 进行许可。
评论