
21.4
GDB
コマンドの使用
745
G
D
B
21.4.8.3
引数と局所変数を表示
info
コマンドには現在のスタックフレームの内容を表示するのに役立つ3つのサブコマ
ンドがある。
info frame
戻り番地と保存レジスタ値を含めて、現在のスタックフレームの情報を表示する。
info locals
スタックフレームに対応する関数の局所変数を、現在の値とともに一覧表示する。
info args
対応する関数呼び出しの引数値を一覧表示する。
次の例では、プログラムが
swap()
関数の先頭で停止した。この
swap()
は例 21-1で修正
された版だ。
25 void swap(int* p1, int* p2) // Exchange* p1 and* p2
26 {
27 int tmp = *p1;
28 *p1 = *p2;
29 *p2 = tmp;
30 }
Windows XPの Intel製システムでは、
info frame
コマンドが次の情報を表示する。
(gdb) info frame
Stack level 0, frame at 0x22f010:
eip = 0x4010e7 in swap (gdb_example.c:27); saved eip 0x4010c0
called by frame at 0x22f030
source language c.
Arglist at 0x22f008, args: p1=0x22f024, p2=0x22f020
Locals at 0x22f008, Previous ...