我在尝试将double转换为C++字符串时遇到了一些问题.这是我的代码
std::string doubleToString(double val)
{
std::ostringstream out;
out << val;
return out.str();
}
Run Code Online (Sandbox Code Playgroud)
我遇到的问题是如果将double传递为'10000000'.然后返回的字符串值是1e + 007
如何将字符串值设为"10000000"
Meh*_*ari 14
#include <iomanip>
using namespace std;
// ...
out << fixed << val;
// ...
Run Code Online (Sandbox Code Playgroud)
您还可以考虑使用setprecision
设置小数位数:
out << fixed << setprecision(2) << val;
Run Code Online (Sandbox Code Playgroud)
#include <iomanip>
std::string doubleToString(double val)
{
std::ostringstream out;
out << std::fixed << val;
return out.str();
}
Run Code Online (Sandbox Code Playgroud)