我是一个编程新手,我目前正在用目标 c 编写一个转换计算程序,我真的很挣扎。
我有一个表示 unsigned long long 值的字符串。在尝试添加另一个字符时,我需要一种方法来检查新字符在添加之前是否不会超过 LONG_LONG_MAX。或者如果该值大于/将大于 LONG_LONG_MAX,则删除最后一个字符
我能想到的唯一可能的方法是:
- (BOOL) isNumberStringValid:(NSString *)stringValue {
unsigned long long uVal = strtoull(stringValue.UTF8String, NULL, 0);
if (uVal <= ULLONG_MAX) return TRUE;
else return FALSE;
}
我知道这不起作用,因为 uVal 总是 <= ULLONG_MAX 但我想不出任何其他可能检查的方法。谁能帮我找到一种方法来完成这个???