NSLog – 如何打印对象名称?
考虑,
NSString *myString = @"Welcome"; NSLog(@"%@",myString);
将在控制台中打印Welcome
。
我可以打印像“ myString: Welcome
”这样的string吗?
我的意思是,我可以获得对象名称(“ myString
”)与对象值(“ Welcome
”)?
使用下面的代码:
#define stringVariable(x) NSLog( @"%s:%@",#x, x) NSString *myString=@"Welcome"; stringVariable(myString);
注意:一般的原则是,当你在#define的主体内部放置一个#参数时,预处理器用一个传递给macros的精确expression式的Cstringreplace它。 当你传递一个variables名时,你会得到这个名字。