我如何在 C++ 中处理非常大的整数,例如 2^100000000?
我在互联网上没有找到可以给出确切答案的解决方案。
是否有任何机制可以在 c++ 中为如此大的整数提供正确的值?
您正在寻找的东西称为任意精度算术,您会通过谷歌搜索找到大量的图书馆和教育资源。
您可以将给定的数字表示为字符串并将其转换为具有整数位的数组。但是通过关键字“长算术 c++ 库”或其他东西来谷歌搜索的最简单方法。
也许您想使用计算机代数系统 (CAS),它可以像这样表示您的表达式:
class Pow : public Expr {
Number base;
Number exp;
};
Pow expr = new Pow(2, 100*1000*1000);
然后,CAS 允许您在结构上而不是具体值上操作这些表达式。