读书人

为什么io流状态的有关问题

发布时间: 2012-05-21 18:04:41 作者: rapoo

为什么io流状态的问题
cin读到eof错误后,我调用setstatu
cin.setstatu(istream::eofbit | istream::failbit | istream::badbit);
还是不能读取呢

调用cin.clear();就能了。为什么???

[解决办法]
因为输入流一旦发生错误,就会停止任何输入。
调用cin.cleat()是让输入回到正常状态,所以就可以可以输入了。
[解决办法]
未必 用clear就可以,一般是需要用sync()的。

读书人网 >C++

热点推荐