ソース・ファイル内の行を表示するには、
list
コマンド
(省略形はl
)
を使用します。
デフォルトでは、
10行が表示されます。
ソース・ファイルのどの部分を表示するかを指定する方法がいくつかあります。
最もよく使われるlist
コマンドの形式を以下に示します。
list
linenumlist
functionlist
list
コマンドによって表示されたのであれば、
その最後の行の次の行以降が表示されます。
しかし、
既に表示された最後の行が、
スタック・フレーム
(see Examining the Stack)
の表示の一部として1行だけ表示されたのであれば、
その行の前後の行が表示されます。
list -
list
コマンドを上記の形式のいずれかによって実行すると、
GDBはデフォルトでは10行のソース行を表示します。
これはset listsize
コマンドによって変更することができます。
set listsize
countlist
コマンドで表示される行数をcountに設定します
(list
コマンドの引数で他の値が明示的に指定された場合は、
この設定は効力を持ちません)。
show listsize
list
コマンドが表示する行数を表示します。
list
コマンドを実行後、
<RET>キーによってlist
コマンドを実行した場合、
引数は破棄されます。
したがって、
これは単にlist
と入力して実行したのと同じことになります。
同じ行が繰り返し表示されるよりも、
この方が役に立つでしょう。
ただし、
引数‘-’は例外となります。
この引数は繰り返し実行の際にも維持されるので、
繰り返し実行することで、
ソース・ファイルの内容がさかのぼって表示されていきます。
一般的には、
list
コマンドは、
ユーザによって0個、
1個、
または2個の行指定(linespec)が与えられることを期待しています。
ここで行指定とは、
ソース行を指定するものです。
いくつかの記述方法がありますが、
いずれも結果的には何らかのソース行を指定するものです。
list
コマンドの引数として使用できる引数の完全な説明を以下に示します。
list
linespeclist
first,
lastlist ,
lastlist
first,
list +
list -
list
以下に、 ソースの特定の1行を指定する方法を示します。 これは、 いずれも行指定です。
list
コマンドの引数に2つの行指定がある場合、
2つめの行指定は、
最初の行指定と同一のソース・ファイルを指定します。
+
offsetlist
コマンドにおいて、
これが2つめの行指定として使用される場合、
最初の行指定からoffsetで指定される行数だけ下の行を指定します。
-
offset:
number:
function*
address