c语言从文件中读数据有时多一行,有时不多。

2025-06-29 01:25:54
推荐回答(1个)
回答1:

while (!feof(fpsr)){ 读,计数或输出} -- 这是中国c语言教科书普遍的错误。
检查 文件是否 读到 EOF ,应当在 读语句执行以后,因为读语句 执行后才会返回 文件状态,设文件标志(是否到达 EOF, 是否有读的错误)。所以 判断 是否 EOF 要在读 以后,计数和输出以前。

正确的次序是:
while (1){
读;
if (feof(fpsr) ) break; // 及时 结束
计数或输出
}