how do I check if input from cin is a double? [duplicate]
Possible Duplicates:
How to validate numeric input C++ how do I validate user input as a double in C++?
I need to get input from the command line and check if it is a valid number... storing it as a double. If the input is invalid, I need to keep asking for a number.
double x;
cout << '>';
cin >> x;
while (/*x is invalid*/){
cout << "Invalid Input! Please input 开发者_如何学编程a number." << endl;
cout << '>';
cin >> x;
}
So how do I check if it is valid?
parse the string and check if there are numbers and 0 or one dot. If these rules aren't met, you just print an error message.
See "How to validate numeric input in C++" - already asked and answered on the site.
精彩评论