我的一个朋友把他的程序发给我。他使用“stod”函数将字符串转换为双精度。还有其他可能性做这样的事情吗?
我的编译器显示错误“stod 未在此范围内声明”
我已包含#include <string> #include <cstdlib>但没有任何改变。
我的编译器不使用 C++11 功能。顺便说一句,该程序是作为学校项目编写的,没有使用 C++11 的目的。
std::atof()是C语言提供的一个快速选项,你必须包含<cstdlib>它才能使用它。
否则,您可以使用 std::stringstream 来处理它。
#include<sstream>
std::string value="14.5";
std::stringstream ss;
ss<< value;
double d=0.0;
ss>>d;
Run Code Online (Sandbox Code Playgroud)