C++流状态的查询和控制

来源:互联网 发布:python import math 编辑:程序博客网 时间:2024/06/04 19:18
while(cin >> val,!cin.eof())
{
//发生系统级错误
if(cin.bad())
{
throw runtime_error("IO srtream corrupted");
}
//读入错误,比如类型不匹配
if(cin.fail())
{
cerr <<"bad data,try again" <<endl;
//将操作条件重设为有效状态
cin.clear();
//忽略当前缓冲区内容
cin.ignore();
continue;
}

}