有没有一种使用gmplib的方法来打印没有指数的mpf_t
数字?我宁愿不必编写一个读取指数并手动移动小数的函数,因为这种方法似乎有点过头了。
最佳答案
我不熟悉gmplib,但是它支持fixed格式化操纵器吗?
在标准C++中:
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
double d = 1.12345e6;
cout << d << endl;
cout << fixed << d << endl;
return 0;
}
产生:
$ ./test
1.12345e+06
1123450.000000
您可以使用
setprecision(n)
精确度玩游戏,使用setw(n)
精确度玩游戏来进一步调整结果。