の問題に直面していNSDecimalNumber
ます。以下のようなコードがあります。
NSDecimalNumber *n1 = [NSDecimalNumber decimalNumberWithString: @"1e-80"];
NSDecimalNumber *n2 = [NSDecimalNumber decimalNumberWithString: @"1e-80"];
NSDecimalNumber *n3 = [n1 decimalNumberByMultiplyingBy: n2 withBehavior: [NSDecimalNumberHandler decimalNumberHandlerWithRoundingMode: NSRoundPlain
scale: 127
raiseOnExactness: TRUE
raiseOnOverflow: TRUE
raiseOnUnderflow: TRUE
raiseOnDivideByZero: TRUE]];
NSLog(@"result=%@", [n3 descriptionWithLocale: [NSLocale autoupdatingCurrentLocale]]);
上記のコードは結果1e+98
を出力していますが、これは正しくありません。それはゼロであるべきです。ここで何が欠けていますか?