c++ - 我想编写一个用户必须输入整数的代码,但如果用户输入字符串,它将显示“输入整数:”
问题描述
这是我的代码,但它不起作用。如果用户输入字符串显示“Enter Integer”但显示错误,我想制作。任何人都可以帮助我吗?感谢 int选择;
cout << "Please enter desired number: " ;
cin >> choice;
while (!cin)
{
if (!cin )
{
cout << "ENTER INTEGER: ";
cin.clear();
cin.ignore(numeric_limits<streamsize> :: max(), 'n');
cin >> choice;
continue;
}
else
{
break;
}
}
解决方案
int main()
{
cout<<"enter a number";
int number;
while(!(cin>>number)){
cin.clear();
cin.ignore(numeric_limits<streamsize>::max(), '\n');
cout<<"enter an number\n";
}
cout<<number<<'\n';
}