GDBでは、構造体を指す変数を指定すると、print
は生のポインター値を表示し、x
は指す生のバイトを表示します。その構造体としてポイントされているデータ、つまりフィールドとその値のリストを表示する方法はありますか?
print *variable
そうすると、その変数の値がGDBに表示されます。
インデントと改行で構造体を表示するオプションもあります:
$1 = {
next = 0x0,
flags = {
sweet = 1,
sour = 1
},
meat = 0x54 "Pork"
}
そのためには、きれいなプリントを設定する必要があります:
set print pretty on
値の配列を印刷する場合は、次のようにします。
print *array@len