【发布时间】:2018-12-27 21:45:37
【问题描述】:
我想提高双精度。看起来 double 和 float 的精度是一样的。 (对于我未来的 c++ 计划,我还需要更高的精度。)
我不知道该怎么做。
#include <iostream>
using namespace std;
int main()
{
double fraction1 = 0.123467890123456789;
float fraction2 = 0.123467890123456789;
cout << fraction1 << endl;
cout << fraction2 << endl;
return 0;
}
这会产生:
0.123468
0.123468
我本来希望达到 10 位或更多位的精度。
【问题讨论】:
-
这些变量存储的位数比
cout默认打印的多。试试std::setprecision。 -
实数的精度与该数字的显示方式之间存在很大差异。
标签: c++