我有一个unsinged int,其值为-10,
现在我想将其转换为NSString
。
简单地说,我们在objective-c中进行iphone编程
int x = 10;
NSString *str = [NSString stringWithFormat:@"%d",x];
NSLog(@"My String is %@",str);
我将控制台输出显示为10
但如果它像
那样unsigned int x = -10;
NSString *str = [NSString stringWithFormat:@"%d",x];
NSLog(@"My String is %@",str);
然后输出将是相同的,而不是-10,
我该如何正确转换?
答案 0 :(得分:11)
您有没有问过自己未签名的含义?
总是> = 0. -10不是无符号变量的有效值。
答案 1 :(得分:3)
无符号整数的值不能为-10。
答案 2 :(得分:3)
使用%u
代替%d
。它类似于C : Convert signed to unsigned。