我正在尝试检查float变量的长度,但是我不知道要使用的正确语法。我看了这个,我找不到答案。
我的代码是一个简单的if语句:
if (currentNumber.digits < 3) { //If the number has less that three digits, I don't know what to put here to get it working
//code
}
答案 0 :(得分:2)
#include <math.h>
//...
int digits = (int) ceil(log10(number));
负数的额外逻辑留给读者练习。
答案 1 :(得分:2)
因为似乎没有正确答案:
int digits = (int) ceil(log10(currentNumber));
答案 2 :(得分:0)
您可以使用您的值制作NSString并检查其长度:
NSString *stringNumber = [NSString stringWithFormat:@"%g", currentValue];
int length = stringNumber.length
您可以从长度中减去1以考虑小数点。
Here's NSString
文档的参考,以便您可以检查方法的作用,以防您不理解。
编辑:如果你想要小数点前面的数字,你可以在我发布之后做到这一点:
[stringNumber substringToIndex:[stringNumber rangeOfString:@"."].location].length
然后在程序的条件下使用此值。
答案 3 :(得分:0)
int digits = [[NSString stringWithFormat:@"%g", variable] length]