#include<iostream>
using namespace std;
int main(){
int c;
while(true){
if(c < 0){
return 0;
}
cout<<"请输入"<<endl;
cin>>c;
cout<<"c="<<c<<"---"<<endl;
}
return 0;
}
写了一个简单的输入代码,当输入是一个非整数类型的字符时,会进入死循环。
具体问题产生原因见:【C++】 cin错误导致的while()死循
解决办法:
在输入结束后进行判断:
if(cin.fail()){
cin.clear();
cin.sync();
cout<<"输入格式错误"<<endl;
continue;
}