Я хочу, чтобы команда lldb передала nsarray объект адреса объекта

NSArray *arr=[[NSArray alloc]initWithObjects:@"A",@"AA",nil];

Я устанавливаю точку останова, затем, если я запускаю команду po на lldb, я получаю адрес переменной arr. Я также хочу найти адрес объекта @ «A» и объекта @ «AA». Как я могу найти


person Mohit    schedule 19.02.2013    source источник
comment
С новым синтаксисом вы можете написать NSArray* arr= @[ @A,@AA ];   -  person Ramy Al Zuhouri    schedule 19.02.2013


Ответы (2)


Что-то вроде этого:

// This will print pointer values
print arr[0]
print arr
print &arr
// This will print object values
po arr
po arr[0]
person Ramy Al Zuhouri    schedule 19.02.2013
comment
ошибка: адрес запрошенного выражения свойства ошибка: 1 ошибка синтаксического анализа выражения - person Mohit; 19.02.2013
comment
Попробуйте использовать [arr objectAtIndex: 0] вместо arr[0]. arr[0] работает для более новых версий. - person Ramy Al Zuhouri; 19.02.2013

Если вы используете 4.6 или более позднюю версию, вы можете попробовать «переменная кадра arr [0]». Он не будет работать в более ранних версиях, потому что он основан на синтетических дочерних элементах, предоставляемых для NSArray, который >= только 4.6

person Enrico Granata    schedule 20.02.2013