从文件中读取整数直到 EOF:避免重复读取
提供的 C 代码从文本文件中读取整数,直到到达末尾文件的大小 (EOF)。但是,它会读取最后一行两次,导致输出重复。发生这种情况的原因是:
解决方案:
要解决此问题,请使用在读取 EOF 时退出的 while 循环:
while (true) { int x; iFile >> x; if (iFile.eof()) break; cerr << x << endl; }
在此循环中:
此方法确保最后一个整数仅打印
注意:
原始代码还有另一个潜在问题:尝试读取空文件。这可以通过在 if 语句中嵌入读取操作来解决,该语句检查流是否打开且不在 EOF。
以上是在 C 中从文件中读取整数时如何防止重复读取?的详细内容。更多信息请关注PHP中文网其他相关文章!