C ++中的数字数据验证

时间:2013-04-19 23:50:53

标签: c++ validation while-loop numeric

我到处寻找,但我似乎无法找到并实现只接受整数的输入验证,我的代码运行得非常好但我唯一的问题是,因为我添加了我的验证码,它需要用户在接受第二个输入之前输入两次,我想要的只是让用户只需输入一次并进行良好的验证,这样程序就会识别出它不是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;
}

1 个答案:

答案 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}}