【发布时间】:2014-07-15 16:03:29
【问题描述】:
我 read 认为 Decimal 类型的范围为 (-7.9 x 10^28 到 7.9 x 10^28) / (10^0 到 10^28) 并且它“适用于金融和货币计算。”
我似乎找不到一个消息来源说 Decimal 可以一分钱表示从 ($79,000,000,000,000,000,000,000,000,000.00) 到 $79,000,000,000,000,000,000,000,000,000.00 的所有值。
Decimal 是 128 位的类型,128 位可以表示从 -10^38 到 10^38 的每一分钱。但我不知道 Decimal 是如何实现的,因此与 floats 一样,数字从 0 越远,精度可能会损失一分钱。
【问题讨论】:
-
小数引起的舍入误差直接转入比尔盖茨的私人银行账户。
-
请记住,如果您想保持精确到一分钱,那么您的“最大”值实际上是
Decimal.MaxValue / 100