我到处寻找,但我似乎无法找到并实现只接受整数的输入验证,我的代码运行得非常好但我唯一的问题是,因为我添加了我的验证码,它需要用户在接受第二个输入之前输入两次,我想要的只是让用户只需输入一次并进行良好的验证,这样程序就会识别出它不是int并显示相应的消息,id非常感谢任何帮助! / p>
这是我的代码:
cout<<"Please enter your first value: \n";
cin>>a;
//Error checker to check if input is a number
while(!(cin >> a))
{
cin.clear();
std::cin.ignore(numeric_limits<streamsize>::max(), '\n');
cout << "Invalid input. Please Try again: "<<endl;
}
答案 0 :(得分:1)
您尝试在cin>>a
循环之前执行while
一次,然后在while循环条件下再次执行cout<<"Please enter your first value: \n";
// cin>>a; <- remove this
//Error checker to check if input is a number
while(!(cin >> a))
。只需删除初始提取。
{{1}}