2012-03-15 48 views
0

我在App Store上有一款游戏,我收到的报告中的分数是准确和不正确的报告。我用了很长时间来处理所有的数学问题。不幸的是,在大约20亿的时候,我的数学开始失败,因为分数变得太大。如何解决数据类型大小限制?

是否有解决数据类型大小限制的标准方法?怎么样?

+3

无符号长整型是64位,它可以保持最大值18446744073709551615,它更有可能因为用int或长整数算术运算而出现错误,最大值只有20亿以上。 – nos 2012-03-15 15:09:27

+0

如果您想要极高的精度,您也可以使用NSDecimalNumber。 – 2012-03-15 15:21:02

+0

'int'的最大值约为20亿 - 你可能在错误的地方使用了这个函数*(它可能是隐含的,比如调用一个返回int的内建函数,但是把它分配给一个long long) )* – 2012-03-15 15:24:24

回答

2

一个无符号long long的范围是0-18,446,744,073,709,551,615。如果你只是在那里做整数运算,你不应该遇到数据类型限制。