【问题标题】:how to store 1000000 digit integers in C++如何在 C++ 中存储 1000000 位整数 【发布时间】:2011-06-28 21:45:38 【问题描述】: 在我的问题中,我必须保存大整数,如最多 1000000 位数字并进行一些操作。我该怎么做。我知道 C++ 中的 long int 最多可以存储 10 位数字 【问题讨论】: 标签: c++ types integer 【解决方案1】: 您可以使用GMP,GNU 任意精度库。请注意,如果内存不足,它不是一个非常好的库。 我的意思是,如果它无法分配内存,它就会从你下面退出。我发现这是一个……有趣的……通用库的架构决策,但它在这类东西中很受欢迎,所以,只要你愿意遵守这个限制,它可能是一个不错的选择。 另一个不错的是MPIR,它是 GMP 的一个分支,尽管名称为“多精度整数和有理数”,但它可以很好地处理浮点数。在请求帮助或提出改进建议时,我发现这些人比 GMP 开发人员更有帮助(但请注意,这是我的经验,你的情况可能会有所不同)。 【讨论】: 此外,据报道 MPIR 对窗口(优化的汇编代码)有更好的支持,如果发布者对此有任何顾虑的话。