首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Microsoft Calculator是如何计算出这么大的数字的?

Microsoft Calculator是如何计算出这么大的数字的?
EN

Stack Overflow用户
提问于 2014-03-25 14:27:50
回答 2查看 373关注 0票数 0

我大约有8E10000,所以它是如何计算这么大的数字的,没有变量可以容纳这么大的数字。

EN

回答 2

Stack Overflow用户

发布于 2014-03-25 14:38:07

C中的普通类型通常最多只能存储64位,而不是单个变量,您可以使用一个字符数组来存储数字的位数,并为程序中的每个运算(和、减等)编写函数。

你可以看看这个:GNU Multiple Precision Arithmetic Library

票数 0
EN

Stack Overflow用户

发布于 2014-03-25 14:45:38

在坚果外壳中,他们不是使用一个变量来保存操作数,而是使用可以保存任意长数字(如数组)的数据结构,并且他们通过考虑大型radix系统中的数字来评估操作。

当您实际执行数学运算时,操作数不是变量,而是数组(或任何其他合适的数据结构),您可以通过组件执行运算(如果可用)。

当你想要加2数组的时候,你选择一个基数,然后循环数组,把op1i加到op2i上,然后取这个值,检查它是否大于你的基数,然后计算一个你添加到下一个加法中的回车。

代码语言:javascript
复制
car = (op1[i] + op2[i])%radix

在选择基数和底层数据时需要小心,这样加法才不会导致溢出。

这也是你在不考虑基数的情况下手动添加基数10的时候所做的。

您还可以在this上查找bigint包。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22626925

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档