非常に大きなdouble数をint(またはlongまたはlong long)に変換しようとしていますが、いくつかの問題があります。ほとんどの場合、変換は良好ですが、場合によっては変換されません。
私のコード:
double price = 12345678.900000;
double hundredNumber = price * 100;
NSNumber *number = [NSNumber numberWithDouble:hundredNumber];
int tempNumber = [number intValue];
tempNumberまで、すべてうまくいきます。1234567889からログアウトしますが、1234567890である必要があります(... 89 -... 90)なぜそれが発生する可能性があり、正しく変換する方法を知っている人はいますか?
PS私は値にバックスペースを実装しようとしています(例:123.45、その後は12.34になるはずです)。多分誰かがこのような何かを実装しましたか?