使用ARC将NSUInteger转换为字符串

tan*_*ngo 3 objective-c nsstring nsuinteger

我正在尝试将NSUInteger转换为字符串,以便我可以打印消息.从搜索,似乎我需要使用stringWithFormat,但我收到一个错误,ARC不允许隐式转换.

这是有问题的一行:

NSString *text = [[NSString stringWithFormat: (@"%li",  NSUInteger)];
Run Code Online (Sandbox Code Playgroud)

我试过在没有帮助的情况下将格式说明符更改为%lu.

谢谢.

Mac*_*tle 23

你可能有一个类型为NSUInteger的变量

NSUInteger myNumber;
Run Code Online (Sandbox Code Playgroud)

然后你可以将它转换为这样的字符串:

NSString *text = [NSString stringWithFormat:@"%li",  myNumber];
Run Code Online (Sandbox Code Playgroud)

我现在更喜欢的解决方案是:

NSString *text = [NSString stringWithFormat:@"%@",  @(myNumber)];   
Run Code Online (Sandbox Code Playgroud)

这有助于避免编辑有关错误数字格式代码的警告(很长一段时间后我仍然对它们感到困惑).

  • 摆脱括号. (2认同)