计算3个CGFloats时我遇到了一些问题
我有:-34.522 + 39.049 + 0.2889 = ios给了我73
但它应该让我更像是正常的计算器值,如= 4.81
CGFloat x = (46.2076 * -34.522) + (60.3827 * 39.049) + (2.028 * 0.2889);
NSLog(@"d %f",x); ->> 763.291199
答案 0 :(得分:0)
CGFloat t = -34.522 + 39.049 + 0.2889;
NSLog(@"%f",t);
答案 1 :(得分:0)
我不是百分百确定这是否是你所要求的,但如果你只想要2位数的精度,你必须指定它。使用%.2f
通过格式说明符很容易,其中2是小数位后面的位数。
CGFloat x = (46.2076 * -34.522) + (60.3827 * 39.049) + (2.028 * 0.2889);
NSLog(@"d %.2f",x);
或者,也可以使用NSNumberFormatter
完成此操作。
NSNumberFormatter *formatter = [NSNumberFormatter new];
[formatter setPositiveFormat:@"#.##"];
NSString *output = [formatter stringFromNumber:@(x)];
NSLog(@"Out: %@",output);