C ++中最大的数据类型范围

时间:2018-05-08 04:03:04

标签: c++

我想要一个可以容纳10 ^ 21的数据类型。经过足够多的搜索,我得到了无条件的长期,因为在18 * 10 ^ 18附近占据一席之地,这仍然不够。我该怎么办?

2 个答案:

答案 0 :(得分:2)

g++clang++,大多数平台都支持__uint128__int128,其中包含128位。您可以像普通整数一样使用它们,但它们往往有点less compatible with the standard library

这可以保存最多2^128 ~ 10^38

的数字

您也可以使用doublefloat,但会失去精确度。

或者您可以使用BigInt library,它允许任意精度整数。

答案 1 :(得分:0)

我们将Magma用于这些类型的数字: https://en.wikipedia.org/wiki/Magma_(computer_algebra_system) http://magma.maths.usyd.edu.au/magma/

不确定他们是否有C ++库,但需要深思。这些东西可以容纳的数字令人印象深刻。