0

次の出力が表示されますが、理由がわかりません!? 結果の数値は 1 ずれています。

double は膨大な数を処理できると思いましたか? 私は何かを正しく理解していないと確信しています!どんな助けでも大歓迎です。

(gdb) print (double) [[NSNumber numberWithDouble:9606977671929857.0] doubleValue]
$13 = 9606977671929856

どうもありがとう!

4

1 に答える 1

4

倍精度浮動小数点型の精度を使い果たしました。これには、10 進表記で約 14 桁の有効数字しかありません。

于 2010-12-01T21:00:50.637 に答える