C#内存类型大于ulong

时间:2011-11-01 15:10:57

标签: c# math

我需要在C#中进行大功率计算(想想2 ^ 1,000,000),并且ul远远不够。在.NET中可能没有更大的实现,但是有一些第三方的东西,甚至是我可以制作的东西吗?

3 个答案:

答案 0 :(得分:20)

如果您使用的是.NET Framework 4.0,则可以使用BigInteger。只需添加对System.Numerics程序集的引用。

如果您无法使用.NET Framework 4.0,还有很多其他实现,例如CodeProject上的this one

答案 1 :(得分:4)

您可以使用.Net 4.0中的System.Numerics.BigInteger

答案 2 :(得分:1)

您看起来正在寻找的术语是“任意精度算术”,在2 ^ 1,000,000的情况下,是一个任意精度整数。

.NET 4中的System.Numeric.BigIntegers可能正常工作。

如果您需要使用早期版本的.NET或任何其他语言,或者需要更多功能或性能,GMP library是常见数学运算的常用句点。 GMP是用C语言编写的,可以通过几乎任何其他语言的包装器获得。