This question already has answers here:
Arbitrary size integers in C/C++
(5个答案)
What variable type for extremely big integer numbers?
(1个答案)
3年前关闭。
我需要一种使用非常大的数据类型的方法。尽管int通常为4个字节,但我需要536、870、912字节甚至更高的数据类型。我不能只使用数组,因为我需要能够将它们转换为字符串,加,减,乘,除等。
如何创建或使用如此大的数据类型?我需要一个uint4294967296_t:P
请注意,我尝试使用带位域的结构,但是它们不够大,因此无法使用该结构在值之间进行转换。
(5个答案)
What variable type for extremely big integer numbers?
(1个答案)
3年前关闭。
我需要一种使用非常大的数据类型的方法。尽管int通常为4个字节,但我需要536、870、912字节甚至更高的数据类型。我不能只使用数组,因为我需要能够将它们转换为字符串,加,减,乘,除等。
如何创建或使用如此大的数据类型?我需要一个uint4294967296_t:P
请注意,我尝试使用带位域的结构,但是它们不够大,因此无法使用该结构在值之间进行转换。
最佳答案
使用Bignumber库,因为它的简单性,我更喜欢TTMath。您可以在这里Link to tttmath找到它。 TTTmath允许进行大量运算,但是您可能需要创建自己的toString方法。
这是他们的Samples页面中使用的TTTmath的示例:
#include <ttmath/ttmath.h>
#include <iostream>
int main()
{
ttmath::UInt<2> a,b,c;
a = "1234";
b = 3456;
c = a*b;
std::cout << c << std::endl;
}
Listing nr 1
关于c++ - 如何在C++中获得任意大数? ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42322607/
10-10 05:35