Как напечатать адрес строки NSSt в отладчике Xcode

Обычно в отладчике lldb, если вы делаете po для объекта, его адрес также отображается вместе с описанием. Однако в случае строки NSSt адрес не отображается. Так что вопрос в том, есть ли способ это увидеть.

PS - NSLog% p в исходном коде не тот ответ, который я ищу.

2 ответа

Решение

Просто используйте "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 @ "тест 2"

Ты можешь использовать register read прочитать адрес в памяти. это войдет как eax = 0x00004940 @"string"и с другим адресом и описанием регистра.

Другие вопросы по тегам