我在 NSString 中有长整数值(例如:2705758126)。
当我尝试显示它时: NSLog(@"%i", [myValue integerValue]); 它返回:2147483647。
如何显示、比较等这个长整数
我在 NSString 中有长整数值(例如:2705758126)。
当我尝试显示它时: NSLog(@"%i", [myValue integerValue]); 它返回:2147483647。
如何显示、比较等这个长整数
尝试
NSLog(@"%lld", [myValue longlongValue]);
文档建议分别对 NSInteger 和 NSUInteger 使用 @"%ld" 和 @"%lu"。由于您使用的是 integerValue 方法(与 intValue 或 longLongValue 或其他方法相反),这将返回一个 NSInteger。
从这里的示例中,您可以看到两种方式的转换:
NSString *str=@"5678901234567890";
long long verylong;
NSRange range;
range.length = 15;
range.location = 0;
[[NSScanner scannerWithString:[str substringWithRange:range]]
scanLongLong:&verylong];
NSLog(@"long long value %lld",verylong);