gdb超基本

gdb ? printf/coutデバッグでええわ〜

と言わずに使ってみることにした.

gdbの前にgcc -g

gcc -g yourefile.c 

イザ!gdb

gdb a.out 

プログラムの実行  !!

run
  • rだけ でもええよ!

ブレークポイントの指定

ブレークポイントを設定すると、そこで実行が一時停止させるkとができる

(gdb) break 行番号
(gdb) break 関数名
(gdb) break ファイル名:行番号

b でもいい

gdb の終了方法

(gdb) q

ジャンプ:関数 SKIP!

関数の中の処理まで追い掛けたくない場合。

(gdb) next
  • n でもええよ!

関数の中もみたいよ!

関数内の処理を追いかける場合。

(gdb) step
  • s もいいよ

ブレークポイントを設定した箇所だが、実行の継続する場合。

(gdb) continue
  • c でもええよ。

よく使うコマンドまとめ

元のコマンド 最短コマンド 意味
backtrace bt 関数呼び出しのトレース
break b ブレークポイントの設定
continue c プログラムの再開
delete d ブレークポイントの削除
finish fin 現在の関数まで実行
help h ヘルプを表示
info i 各種情報のリストを表示
list l ソースプログラムを表示
next n 逐次実行
print p 式を実行し結果を表示
quit q gdbの終了
return ret 現在の関数をその場で終了
run r プログラム実行
rwatch rw 読み出しウォッチポイント設定
step s ステップイン実行

bxyxvzz.hatenablog.com