просмотреть содержимое динамического массива в xcode C++ (lldb)

Как просмотреть содержимое динамически созданного массива в отладчике xcode (С++)?

int main(int argc, const char * argv[])
{
int *v;
int size;
cout << "Enter array size" << endl;
cin >> size;
v = new int [size];
for (int i=0; i<size; i++){
    cin >> v [size];
}
// see array contents
return 0;
}

Я хочу просмотреть содержимое v.


person user1673892    schedule 12.10.2013    source источник
comment
Я думаю, что на ваш вопрос уже ответили здесь: stackoverflow.com/questions/484707/   -  person lolando    schedule 12.10.2013
comment
Это недоступно в xcode 5   -  person user1673892    schedule 12.10.2013


Ответы (2)


Мы не добавили какой-то синтаксис в синтаксический анализатор выражений, такой как синтаксис gdb "@", потому что мы хотим сохранить синтаксис языка как можно ближе к C/ObjC/C++. Вместо этого, поскольку задача, которую вы хотите выполнить, состоит в том, чтобы «прочитать часть памяти как массив из N элементов типа T», вы должны сделать это, используя:

(lldb) чтение памяти -t int -c `размер` v

В общем, -t указывает тип, а -c количество элементов, и я использую тот факт, что значения параметров в обратных галочках оцениваются как выражения, а результат подставляется в параметр.

person Jim Ingham    schedule 14.10.2013
comment
Есть ли какие-то варианты чтения из определенного индекса в другой? Спасибо. - person user1673892; 17.10.2013
comment
Не явно, хотя это может быть хорошей идеей, но вы можете указать начальное смещение в выражении для начального адреса: v+5. - person Jim Ingham; 18.10.2013

В другой теме есть лучший ответ.

https://stackoverflow.com/a/26303375/767039

Я думаю, что это легче использовать и запомнить.

person Nyon    schedule 21.04.2015