【问题标题】:Integers of unlimited size?无限大小的整数?
【发布时间】:2012-09-20 21:07:11
【问题描述】:

在 Python 中,我可以编写一个程序来计算无限大小的整数。就在前几天,我做了百万分之一的斐波那契数,它太大了,无法放入控制台。如果可以在 Python 中做到这一点,据我所知,它是用 C 编写的,那么如何在 C++ 中做同样的事情呢?它必须是可能的,否则我看不出它是如何在 Python 中完成的。我也相信 Java/C# 中有类似的东西称为 Biginteger,但我找不到任何说明如何在 C++ 中实现它。

【问题讨论】:

标签: c++ integer biginteger memory-limit


【解决方案1】:

Wikipedia 列出了许多您可以使用的库。那些被称为 C 库的也可以在 C++ 中使用。 C++ 没有内置的 bigint 类型。

正如此参考资料显示的那样,在询问之前,谷歌通常是一个好主意,检查维基百科,最重要的是,检查常见问题解答。

但是,在这种情况下,令人费解的是,the FAQ 似乎没有提供答案。

【讨论】:

    【解决方案2】:

    在 C/C++ 中一切皆有可能。 您可以编写自己的名为 bigInteger 的类并使用数组来表示数字,但最好的方法是使用已经编写的库来处理大数字,因为这些库经过了很好的优化,其中很大一部分是用 asm 编写的额外的速度。以下是几个例子:

    【讨论】:

    • 谢谢,我一定会调查的。
    • class cBigNumber 似乎比 GMP 好,但我无法编译它。
    猜你喜欢
    • 2012-11-10
    • 2013-01-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多