Ex9_3.cpp
上传用户:wuzhousb
上传日期:2022-07-12
资源大小:380k
文件大小:1k
源码类别:

书籍源码

开发平台:

Visual C++

  1. //【例9.3】提高输入的健壮性。输入时需要故意输错,以测试健壮性。
  2. #include<iostream>
  3. using namespace std;
  4. int main(){
  5. char str[256];
  6. int i;
  7. cout<<"请输入整数:"<<endl;//强制清空缓冲区,保证输出,不会等缓冲区溢出再输出
  8. cin>>i;//可故意输入若干非数字字符,下次再输入若干字符加数字串加若干非数字字符进行检测
  9. while(cin.fail()){
  10. cout<<"状态字为:"<<cin.rdstate()<<endl;
  11. cin.clear(0);
  12. cin.getline(str,255);//读空缓冲区
  13. cout<<"输入错误,请重新输入整数"<<endl;
  14. cin>>i;
  15. }
  16. cin.getline(str,256);//读空缓冲区
  17. cout<<"请输入字符串"<<endl;
  18. cin.getline(str,255);//B行
  19. cout<<"输入整数为:"<<i<<endl;
  20. cout<<"输入字符串为:"<<str<<endl;
  21. return 0;
  22. }