输入流状态查询
Primer 四版248页
#include <iostream>
using namespace std;
int main()
{
int val;
while (cin>>val,!cin.eof())
{if (cin.bad())
throw runtime_error("输入流发生错误");
if(cin.fail())
{cerr<<"错误数据"<<endl;
cin.clear(iostream::failbit);
continue;
}
cout<<val<<endl;
}
return 0;
}
检查输入流是不是发生错误
当输入字母时
会一直有 ”错误数据“
怎么会这样?