CGFloat 小数点的精确运算
一般用两个CGFloat类型相减或者相加,可能会导致小数后运算不准确的现象,所以最好转化为
NSDecimalNumber对像进行运算;
效果:小数点最多显示两位,而且如果会将小数点后面0去掉
CGFloat a = 12.345011;
CGFloat b = 10.01;
NSDecimalNumber *num1 = [NSDecimalNumber decimalNumberWithString:[NSString stringWithFormat:@"%0.02lf",a]];
NSDecimalNumber *num2 = [NSDecimalNumber decimalNumberWithString:[NSString stringWithFormat:@"%0.02lf",b]];
NSDecimalNumber *result = [num1 decimalNumberBySubtracting:num2];
NSLog(@"%@",result);