确定输入是否为数字

时间:2018-07-04 14:32:59

标签: c++ input precision cin

以下代码本质上应该重复我输入的任何双精度数值。但是,例如,当我使用“ 45 * 45”作为输入时,它将为我提供“ Value is 45”的输出,将所有内容都删除*。我希望它以“不是双精度数值”的形式返回。我该怎么办?任何帮助将不胜感激!

#include <iostream>     
#include <iomanip>   
#include <cmath>   
#include <cstdlib>   
#include <cstring> 

using namespace std; 


int main() {
    double number1; //Initialize Numerical Value

std::cout << "Please input a double precision numerical value :";   
std::cin >> number1;
if (!cin) {
    cout << "Not a double precision numerical value" << endl;
}
else if (cin) {
    cout << "Value is: " << number1;
}
else {
    cout << "Error";
}

return 0;
}

0 个答案:

没有答案
相关问题