我有一个 number_to_string 函数,可以将数字转换为字符串。现在我想输出没有科学记数法的结果字符串。这是我的代码:
#include <iostream>
#include <sstream>
using namespace std;
string number_to_string( double value )
{
string result;
stringstream convert;
convert << value;
result = convert.str();
return result;
}
int main()
{
double d = 591284081248903124;
string s = number_to_string( d );
cout << s << endl; // why it shows 5.91284e+17 ?!?!
return 0;
}
最佳答案
添加convert << std::setiosflags (std::ios::fixed);
在行 convert << value;
之前.别忘了 #include <iomanip>
.
关于c++ - 如何防止从 "number to string"函数生成的字符串使用科学记数法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21588244/