Go to the first, previous, next, last section, table of contents.

変数値の履歴

`print' コマンドによって表示される各々の値は、他の式から参照する ことができる GDB の変数履歴というセッションに保存されます。

表示された値は、あなたが参照するために、履歴番号によって与えられ ます。これらは、1ではじまる連続する整数値です。`print' は、指定 された値を表示する前に `$num = ' という形式で履歴番号を 表示します; この num が履歴番号です。

以前の任意の値を参照する場合、その値の履歴番号を後に持つ `$' を 使います。`print' によって表示される出力は、あなたにこのことを 気付かせるようにデザインされています。単なる $ は履歴上の最も 最近の値を参照し、$$ は、その直前の値を参照します。

例えば、ポインタの構造を表示した後で、その内容を再び見たくなったと仮定 しましょう。これは、次のように入力するだけで十分です。

p *$

もし、構造体がチェインを持ち、`next' が次の構造体をポイントして いる場合、次の構造体の内容を表示させる時には、このようにします:

p *$.next

RET を何回も入力することでこのコマンドを繰り返すのは、 とても便利でしょう。

履歴は値を記録しており、式を記録しているわけではないことに注意して 下さい。x の値が4であるとして、あなたが次のコマンドを入力したら:

print x
set x=5

変数履歴に記録されている値は、いかに変数 x の内容が変更されたと しても、`print' コマンドが表示した4のままです。

info values
変数履歴の最後の10個の値を、その番号と共に表示します。これは、 `p $$9' を10回繰り返したのと同様ですが、`info values' は、 履歴を変更しないという部分だけ異なります。
info values n
アイテム番号 n を中心とした10個の変数履歴を表示します。
info values +
最後に表示された値の後の10個の変数履歴を表示します。

Go to the first, previous, next, last section, table of contents.