我正在尝试从函数内部将字符串转换为 double 值,然后返回一个 bool 值,该值将根据转换是否成功而改变。我的问题是如何检查转换是否失败?
//function definitions
bool isValidDouble(string inputString);
bool isValidDouble(string inputString)
{
//Declarations
bool validDouble = true;
double convertedDouble = 0;
convertedDouble = atof(inputString.c_str());
// validDouble = false;
// convertedDouble = 0;
return validDouble;
}
// CODE FROM MAIN
int main()
{
string userInput = "";
cout << "Please Enter a number to convert. ";
cin >> userInput;
isValidDouble(userInput);
return 0;
}
最佳答案
如果 C++11 可用,您可以使用 std::stod() .如果无法进行转换,它会抛出异常。
关于c++ - 将字符串转换为 double 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29336392/