如何声明长度为 1024 位的整型变量?
我正在尝试为数论/计算机科学合并类编写一种算法,该算法可以在比指数时间更好的时间内分解大数。我在 64 位机器上使用 g++ 编译器,但是当我将 long
链接在一起时,它只允许我执行最多 2 个 long。有什么方法可以告诉它为变量使用任意数量的空间吗?
I'm trying to write an algorithm for a number theory/computer science merged class that can factor large numbers in better than exponential time. I am using the g++ compiler on a 64 bit machine but when I chain together long
it will only allow me to do up to 2 longs. Is there any way to tell it to use an arbitrary amount of space for a variable?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
如果您只想要一个长整型集合,则可以声明一个长整型数组。但你不希望这样。您想要 https://mattmccutchen.net/bigint/ BigIntegers :-)
替代方案:
http://gmplib.org/
http://www.mpir.org/
(免责声明:我还没有测试/使用过它们)
或者如果你想实现它们
如何在 C++ 中实现 big int
我将补充一点,C++ std 库不包含大整数实现(来源 STL big int 类实现)
If you want just a collection of longs, you can declare an array of longs. But you don't want that. You want https://mattmccutchen.net/bigint/ BigIntegers :-)
Alternatives:
http://gmplib.org/
http://www.mpir.org/
(disclaimer: I haven't tested/used them)
Or if you want to implement them
How to implement big int in C++
I'll add that the C++ std library doesn't contain a big integer implementation (source STL big int class implementation )
你需要一个图书馆。一个好的例子是 http://gmplib.org/
You'll need a library. A good one is http://gmplib.org/