Как напечатать адрес строки 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"
и с другим адресом и описанием регистра.