可能重复:
How to validate numeric input C++
how do I validate user input as a double in C++?
我需要从命令行获取输入并检查它是否是有效数字...将其存储为double。如果输入无效,我需要继续询问一个数字。
double x;
cout << '>';
cin >> x;
while (/*x is invalid*/){
cout << "Invalid Input! Please input a number." << endl;
cout << '>';
cin >> x;
}
那么如何检查它是否有效?
答案 0 :(得分:2)
解析字符串并检查是否有数字和0或一个点。 如果不满足这些规则,则只需打印错误消息。
答案 1 :(得分:2)
请参阅“How to validate numeric input in C++” - 已经在网站上提问和回答。