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

簡易変数

GDB は、GDB がその中に値をしまうことで、あなたが後から参照することが できるようにするための、簡易変数というものをサポートしています。 これらの変数は GDB 全体に存在し; これらはあなたのプログラムの一部ではなく、簡易変数への値の設定は、 あなたのプログラムの実行に対して何も影響を与えません。これを あなたは自由に使うことができます。

簡易変数は、`$' ではじまる名称を持ちます。`$' ではじまる 任意の名称は、既に定義済みのレジスタ名 (see section レジスタ) を除けば、 簡易変数として扱われます。

あなたは、プログラムで変数値を設定する時のように、式による代入を 使うことで簡易変数に値を保存することができます。例えば:

set $foo = *object_ptr

object_ptr でポイントされるオブジェクトの 内容値を $foo に保存することができます。

簡易変数を最初に使った場合、まずそれは生成されます; しかしその値は、あなたが新しい値を設定するまでは void 値です。 あなたは、いつでも、他の代入を行い、値を変更することができます。

簡易変数には、決まった型がありません。あなたは、簡易変数に対して、 既に設定されている値とは異なった型であったとしても、任意の型の値を 設定することができます。簡易変数は、たとえカレント値がどんな型で あっても式になりえます。

info convenience
今までに利用された簡易変数のリストを表示します。 省略形は、`i con' です。

簡易変数を利用する一つの方法に、インクリメント用のカウンタや 先に進むポインタとしての活用法があります。例えば:

set $i = 0
print bar[$i++]->contents
...RET を入力することで、このコンドを繰り返す。}

ある簡易変数は GDB によって自動的に生成され、便利であろうと思われる値を 持っています。

$_
$_ という変数は `x' コマンドによって最後に調査した アドレスが自動的に設定されます(see section メモリの調査)。 `x' で調査するためのデフォルトアドレスを供給する他のコマンドも また、$_ にそのアドレスを設定します; これらのコマンドには、`info line'`info breakpoint' も 含みます。
$__
$__ という変数は、`x' コマンドが最後に調査したアドレスで 見つかった値が自動的に設定されます。

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