Отображение значений структуры в GDB

В GDB, учитывая переменную, указывающую на структуру, print отобразит значение необработанного указателя, а x отобразит необработанные байты, на которые указывает. Есть ли способ отобразить данные, на которые указывает эта структура, т.е. Список полей и их значений?

Ответ 1

print *variable

Если вы это сделаете, он отобразит значение этой переменной в GDB.
У вас также есть возможность отображать структуру в отступе и новой строке:

$1 = {
next = 0x0,
flags = {
sweet = 1,
sour = 1
},
meat = 0x54 "Pork"
}

Для этого вам нужно установить симпатичную печать:

set print pretty on

Если вы хотите напечатать массив значений, вы сделаете так:

print *[email protected]