| 処理 | cdb | gdb |
|---|---|---|
| ファイルオープン | C:\> cdb -z <file> | |
| プロセスにアタッチ | C:\> cdb -p <pid> | |
| プロセスをデタッチ | ||
| スタックトレース | kvn | where |
| 全スタックトレース | ~*kvn | thread apply all bt |
| フレームの移動 | .frame <frame#> | f <frame#> |
| スレッド一覧 | ~* | info thread |
| スレッドの移動 | ~<thread#>s | thread <thread#> |
| データの表示(4bytes) | dd <addr> | x/wx <addr> |
| データの10つ表示(4bytes) | dd <addr> L10 | x/10wx <addr> |
| 一行のデータ数を指定 | dd /c<#> <addr> | |
| データの表示(8bytes) | x/gx <addr> | |
| シンボル値の表示 | x <symbol> | p <symbol> |
| 変数、関数のアドレスの表示 | info var <var regexp> | |
| ローカル変数の表示 | dv | |
| 命令のデコード | u <addr> | x/i <addr> |
| 関数のディスアセンブル | uf <func> | disas <func> |
| クラスフィールドの表示 | set print pretty on print *((‘Pkg::ClassName’ * ) 0x189956e0) |
|
| 関数一覧の表示 | info functions | |
| レジスタの表示 | r | info reg |
| ヘルプの表示 | ? | help |
| ブレーク(デバッグ開始) | Ctr+C | Ctr+C |
| ブレークの設定(関数) | bp <addr> | stop in <func> |
| ブレークの設定(アドレス) | break *0x449506 | |
| ブレークの設定(ソース行) | break <file>:<line> | |
| ブレークの設定(クラス名+関数) | break <class>::<func>() | |
| ブレークの設定(コマンド指定) | bp <func> “<cmd> ;g” | |
| ブレークポイント一覧 | bl | info breakpoints |
| ブレークポイントの一時無効化 | bd <break#> | |
| ブレークポイントの削除 | bc <break#> | delete <break#> |
| ブレークポイントを全削除 | bc * | |
| 実行/再開 | g | run/cont |
| ステップイン | t | step, stepi |
| ステップオーバー | p | next, nexti |
| ステップアウト | finish | |
| 値の設定 | ||
| フレームの移動 | frame <frame#> | |
| フレームの情報表示 | info frame <frame#> | |
| ソースの表示 | list |