我正在尝试将相当大的双数转换为 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)。也许有人实施过这样的事情?