如何在没有警告的情况下在Xcode中打印地址
问题描述:
下面的代码工作正常,地址被打印,但给出了“错误类型”警告。我对Xcode相当陌生,并且期望将指针无意义地转换为无符号的。如何在没有警告的情况下在Xcode中打印地址
{NSLog(@"Released <%@> at %X, retain count now %lu", newEntry, newEntry, [newEntry retainCount]);}
答
正确格式说明用于指针地址%P:
NSLog(@"Released <%@> at %p, retain count now %lu", newEntry, newEntry, [newEntry retainCount]);
+0
非常感谢 - 约翰 – 2012-03-09 14:25:11
答
%P是用于指针。信息可以通过查看字符串编程指南在格式说明符下找到
答
要打印任何实例变量的地址,您需要使用%p。
NSLog(@"Address %p", newEntry);
retainCount是没用的。别叫它。 – bbum 2012-03-09 15:49:48
@bbum呃,当你在学习的时候,retainCount其实很有趣。 – 2012-03-09 23:39:13
不是真的; “retainCount”充其量是误导性的。 http://www.friday.com/bbum/2011/12/18/retaincount-is-useless/ – bbum 2012-03-09 23:54:32