大于 Unsigned Long Long
Larger than Unsigned Long Long
我正在开发一款 iOS Objective C 应用程序,您可以在其中积累大量财富。到应用程序结束时,用户可以积累的金额超过了 long long 的处理能力。我应该改用什么数据类型?我知道我可以使用 unsigned long,但这只会增加一点点。为了安全起见,我需要用户再多 6 位数字,因此最大值不是 18,446,744,073,709,551,615(大约 1.8x10^19),而是将 1.8x10^25 作为我的最大值是理想的。
精度实际上并不是那么重要,但它无疑会节省我的时间,让我不必做更多的事情,而不仅仅是在整个应用程序中更改数据类型。有什么想法吗?
简答
寻找第 3 方图书馆。
长答案
在处理大数时,最基本的设计决策之一可能是我将如何表示大数?
它是字符串、数组、列表还是自定义(自行开发)存储 class。
做出该决定后,可以将实际的数学运算分解为更小的部分,然后使用 int 或 integer 等本地语言类型执行。
即使是字符串,也有字符数或 "numbers" 数量的限制,如下所示:
What is the maximum possible length of a .NET string?
您可能还想查看:Arbitrary description Arithmetic
我正在开发一款 iOS Objective C 应用程序,您可以在其中积累大量财富。到应用程序结束时,用户可以积累的金额超过了 long long 的处理能力。我应该改用什么数据类型?我知道我可以使用 unsigned long,但这只会增加一点点。为了安全起见,我需要用户再多 6 位数字,因此最大值不是 18,446,744,073,709,551,615(大约 1.8x10^19),而是将 1.8x10^25 作为我的最大值是理想的。
精度实际上并不是那么重要,但它无疑会节省我的时间,让我不必做更多的事情,而不仅仅是在整个应用程序中更改数据类型。有什么想法吗?
简答
寻找第 3 方图书馆。
长答案
在处理大数时,最基本的设计决策之一可能是我将如何表示大数?
它是字符串、数组、列表还是自定义(自行开发)存储 class。
做出该决定后,可以将实际的数学运算分解为更小的部分,然后使用 int 或 integer 等本地语言类型执行。
即使是字符串,也有字符数或 "numbers" 数量的限制,如下所示:
What is the maximum possible length of a .NET string?
您可能还想查看:Arbitrary description Arithmetic