我如何处理算术溢出?

时间:2012-11-14 03:52:59

标签: c++ overflow arithmetic-expressions

我试图弄清楚如何处理两个非常大的整数的加法,减法,乘法和除法的溢出。任何反馈/意见将不胜感激。有谁知道这个和/或我可以咨询的来源的算法?

(我在发布前做过研究,我只是不确定如何解决这个问题)

编辑:两个非常大的整数

3 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

如果你想避免发生溢出的情况,一种方法是使用链表来存储数字的部分,然后分别对部分进行计算,并在列表中添加更多节点来处理多余的数字需要时。

实施例

1234567890可以存储为 - > 12,34,56,78,90 为了相乘,每个单位将成倍增加并转移到下一个单位 - > 1,23,45,67,89,0

请记住,将它分成单个数字单位更容易,例如1,2,3,4,5而不是1,23,45,因为这样可以简化操作。

编辑::“句柄”这个词不是你应该使用的词

答案 2 :(得分:0)

因为除以整数的整数很少是整数,所以这通常是不可能的。

那就是说,这就是我想你想要的: http://gmplib.org/

它处理任意大小的整数和有理数。