如何在Xcode调试器中打印NSString的地址

时间:2014-01-23 14:55:58

标签: xcode pointers nsstring lldb

通常在lldb调试器中,如果对对象执行po操作,则其地址也会与描述一起显示。但是,如果是NSString,则不显示地址。所以问题是有没有办法看到它。

PS - 源代码中的NSLog%p不是我要找的答案。

2 个答案:

答案 0 :(得分:8)

简单地用“p”代替“po”。

示例:

NSString *string1 = @"test 1";
NSString *string2 = @"test 2";

(lldb)po string1
测试1
(lldb)p string1
(NSString *)$ 2 = 0x0000000100003af0 @“test 1”
(lldb)p string2
(NSString *)$ 3 = 0x0000000100003b10 @“test 2”

答案 1 :(得分:0)

您可以使用register read读取内存中的地址。 它将记录为eax = 0x00004940 @"string"以及其他注册地址和描述。