一个ifstream的错误修改

在联系《C++ Primer》这本书的标准IO库时,使用ifstream读取一个文件老是不能成功。自己写的代码如下:

ifstream infile("test.txt");
while(!infile)
{
infile>>temp;
cout<<temp;
}

程序可以编译通过,但是一直进不去循环,打印不出文件内容。查看infile中的内容,很多提示 expression cannot be evaluated 。这也就是为什么进不去while循环的原因。但是很多书和资料都是这样写的,查了很久才发现这样写永远进不去循环,因为infile一直是无效的。(不知道为什么)

改正后应该是:

ifstream infile("test.txt");
while(!infile.eof())
{
infile>>temp;
cout<<temp;
}

这样就可以进去循环了。

原文链接: https://www.cnblogs.com/samwang/archive/2012/03/21/2410500.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    一个ifstream的错误修改

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/44741

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月8日 下午9:23
下一篇 2023年2月8日 下午9:23

相关推荐