如何在 Objective C 中将浮点数格式化为两位小数

4
我有一个字符串,我正在将其转换为浮点数,并希望在if语句中检查值。
原始的浮点值是iPhone从didUpdateHeading方法返回的trueHeading。当我使用@"%.2f"将原始浮点数转换为字符串时,它完美地工作,但我要做的是将原始浮点数转换为相同的值。如果我只是将字符串转换为[string floatValue],我会得到相同的原始浮点数,而我不想要那个。
简而言之,如何获取现有浮点值的前两个小数位?
2个回答

8
round( x * 100.0 ) / 100.0;

2
float x = 123.45678;
int x1 = x * 100.0;
float x2 = (float) x1 / 100.0;

或者如果更喜欢一行代码

float x3 = (float) ((int) (x * 100.0)) / 100.0;

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接