Hua*_*ham 9 string logging constants format-specifiers swift
很抱歉,如果这是重复的,但我尝试搜索包括Apple的字符串格式说明符和IEEE printf规范,但找不到这个简单的答案的答案.
我想打印带字符串格式化程序的os_log消息,用于字符串常量.类似于:
printf("Currently at processing state: %s\n", "reading in");
Run Code Online (Sandbox Code Playgroud)
在C.但是,当我在Swift中尝试这样的事情时:
os_log("Currently at processing state: %s", log: .default, type: .info, "reading in")
Run Code Online (Sandbox Code Playgroud)
它根本没有印刷任何东西.
如何使用字符串格式说明符打印字符串常量?我不知道如何做到这一点NSLog.
编辑:os_log需要StaticString,所以它不能这样做"Something \(Expr) Something else"像print().您仍然可以使用字符串格式来打印数字变量.我想知道在这种情况下如何打印字符串常量/变量.
编辑2:Apple实际上已经在其手册页面上讨论了这个主题,我设法错过了它,但它现在只在Objective-C API版本中讨论过.
Mar*_*n R 12
从os_log手册页:
您也可以使用"%@"格式说明符与Obj-C/CF/Swift对象一起使用
在你的情况下
import os.log
os_log("Currently at processing state: %@", log: .default, type: .info, "reading in")
Run Code Online (Sandbox Code Playgroud)
因为Swift字符串桥接到NSString变量参数列表上,所以可以正常工作.
| 归档时间: |
|
| 查看次数: |
3387 次 |
| 最近记录: |