3

我有一个值为 -10 的 unsinged int,现在我想将其转换为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,

我怎样才能进行正确的转换?

4

3 回答 3

11

你有没有问过自己未签名是什么意思?

它始终 >= 0。-10 不是无符号变量的有效值。

于 2011-06-17T09:15:02.600 回答
3

符号整数的值不能为 -10。

于 2011-06-17T09:14:49.513 回答
3

使用%u而不是%d. 它类似于C :将有符号转换为无符号

于 2011-06-17T09:15:08.887 回答