IO库 8.3

时间:2021-04-29 08:02:00

题目:什么情况下,下面的while循环会终止?

while(cin >> i) /* ... */

解答:当读取发生错误时上述while循环会终止。比如i是整形,却输入非整形的数;输入文件结束标识符;发生系统级的错误。一个流一旦发生错误,其上后续的IO操作都会失败。只有当一个流处于无错状态时,我们才可以从它读取数据,向它写入数据。使用while循环检查流的状态时,如果操作成功,流保持有效状态,则条件为真。