如何在iOS上使用NSLog打印出字符串常量

Bor*_*zin 22 string iphone constants nslog ios

我有一个像这样定义的字符串常量:

#define kMyString @"This is my string text!";
Run Code Online (Sandbox Code Playgroud)

代码中的某处我想用NSLog打印出这段代码:

NSLog(@"This is it: %@",kMyString);
Run Code Online (Sandbox Code Playgroud)

但是得到一个构建错误:Expected expression.

我已经看过Apple的格式说明符,但无法弄明白.

有人可以向我解释如何做到这一点?

谢谢!

sch*_*sch 39

您应该;从以下定义中删除kMyString:

#define kMyString @"This is my string text!"
Run Code Online (Sandbox Code Playgroud)

你这样做的方式相当于:

NSLog(@"This is it: %@", @"This is my string text!";);
Run Code Online (Sandbox Code Playgroud)


Vai*_*rma 5

%@用于对象。BOOL不是一个对象。
根据数据类型%@变化如下

For Strings you use %@
For int  you use %i
For float you use %f
For double you use %lf
Run Code Online (Sandbox Code Playgroud)