Jac*_*son 7 xcode cocoa nslog format-specifiers
我在Mac OS X应用程序中有以下代码行:
NSLog(@"number of items: %ld", [urlArray count]);
Run Code Online (Sandbox Code Playgroud)
我收到警告:"格式指定类型'long'但参数的类型为'NSUInteger'(又名'unsigned int')"
但是,如果我将我的代码更改为:
NSLog(@"number of items: %u", [urlArray count]);
Run Code Online (Sandbox Code Playgroud)
我收到警告:
Format指定类型'unsigned int'但参数的类型为'NSUInteger'(又名'unsigned long')
所以我把它改成了
NSLog(@"number of items: %u", [urlArray count]);
Run Code Online (Sandbox Code Playgroud)
但我收到警告:Format指定类型'unsigned long'但参数的类型为'NSUInteger'(又名'unsigned int')
如何设置我的NSLog以便它不会生成警告?如果我遵循Xcode的建议,我只是进入一个无限循环的更改格式说明符,但警告永远不会消失.
D.C*_*.C. 14
是的,这很烦人.我相信这是一个32/64位的东西.最简单的事情就是投入很长时间:
NSLog(@"number of items: %lu", (unsigned long)[urlArray count]);
Run Code Online (Sandbox Code Playgroud)
通用应用程序的可移植性指南建议在这种情况下进行转换.
NSLog(@"number of items: %ld", (unsigned long)[urlArray count]);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2597 次 |
| 最近记录: |