【问题标题】:How to print full integer like in python, in c++? [duplicate]如何像在python中一样在c++中打印完整的整数? [复制]
【发布时间】:2019-03-12 11:30:27
【问题描述】:

我有一个代码,它运行并计算一系列数字并输出它。当我在 Python 上运行它时,这是我得到的数字 89589789687112168422297691222737771124865819889385981395999564038551674847206437815235099730864284
但是当我在 c++ 中运行相同的代码并输出时,我得到了这个8.95898e+102

我想用 c++ 打印整个整数。我怎样才能做到这一点? 这是python中的正常打印语句:
print((2 ** q))
而在 C++ 中我这样做:
cout << pow(2, q)

【问题讨论】:

标签: python c++ algorithm


【解决方案1】:
#include <iostream>

int main()
{
    long double d{ 89589789687112168422297691222737771124865819889385981395999564038551674847206437815235099730864284.L };
    std::cout << std::fixed << d;
}

long double 的精度不足以准确地表示数字。如果您需要更多,则必须使用诸如 GMP 之类的任意精度库。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-12-21
    • 2013-12-31
    • 1970-01-01
    • 1970-01-01
    • 2019-01-05
    • 1970-01-01
    相关资源
    最近更新 更多