7

我在 NSString 中有长整数值(例如:2705758126)。

当我尝试显示它时: NSLog(@"%i", [myValue integerValue]); 它返回:2147483647。

如何显示、比较等这个长整数

4

4 回答 4

23

尝试

NSLog(@"%lld", [myValue longlongValue]);
于 2009-07-18T14:44:33.160 回答
4

文档建议分别对 NSInteger 和 NSUInteger 使用 @"%ld" 和 @"%lu"。由于您使用的是 integerValue 方法(与 intValue 或 longLongValue 或其他方法相反),这将返回一个 NSInteger。

于 2009-07-18T14:56:20.567 回答
2

你应该看看Apple 的文档。NSString 有以下方法:

- (long long)longLongValue

哪个应该做你想做的。

于 2009-07-18T16:03:07.380 回答
1

从这里的示例中,您可以看到两种方式的转换:

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);
于 2010-10-23T02:28:05.133 回答