MPFR C++ 像整数一样打印浮点数
MPFR C++ Print floating point numbers like integers
刚刚成功地使用 MPFR C++ 编译了一个程序(第一次),我需要打印一些相当大的数字,但它们只是以工程符号而不是整数的形式出现。据我所知,该库并未针对(任意)整数进行优化,因此可以将浮点数用作整数,因为它们不会有任何小数。我只是 C++ 的初学者,所以我不知道如何使用所有可用的工具,但是有没有办法打印出(大)浮点数,就好像它们是整数一样?例如,打印 112275575285571389562324404930670903477890625
而不是(比如)1.12276e+44
。如果我尝试 std::cout.precision(44)
,我会得到 1.12275575285571389562324404930670903477890625e+44
,看起来也好不到哪儿去。
MPFR C++ 允许精确调整输出格式 printf
风格(如果标准 C++ 功能不够用)。示例:
std::cout<<x.toString("%34.0RNf")
括号内格式说明请参考MPFR手册。
你也可以检查这个问题:
刚刚成功地使用 MPFR C++ 编译了一个程序(第一次),我需要打印一些相当大的数字,但它们只是以工程符号而不是整数的形式出现。据我所知,该库并未针对(任意)整数进行优化,因此可以将浮点数用作整数,因为它们不会有任何小数。我只是 C++ 的初学者,所以我不知道如何使用所有可用的工具,但是有没有办法打印出(大)浮点数,就好像它们是整数一样?例如,打印 112275575285571389562324404930670903477890625
而不是(比如)1.12276e+44
。如果我尝试 std::cout.precision(44)
,我会得到 1.12275575285571389562324404930670903477890625e+44
,看起来也好不到哪儿去。
MPFR C++ 允许精确调整输出格式 printf
风格(如果标准 C++ 功能不够用)。示例:
std::cout<<x.toString("%34.0RNf")
括号内格式说明请参考MPFR手册。 你也可以检查这个问题: