4

次のように、毎回現在の行の周りの LLDB 印刷コンテキスト:

     int a = 12;
     int b = a * 13;
->   printf("%d\n", b);
     return 0;
   }

同時に、GDB は現在の行を 1 行だけ出力します。

->   printf("%d\n", b);

LLDB のように GDB をすべてのステップで印刷コンテキストにすることはできますか? グーグルは、すべてのリストコマンドを提供します。

4

2 に答える 2

3

これを達成する方法は、's' や 'n' などのキーワードを再定義するマクロを定義することです。たとえば、各ステップでスタック ポインターの値を出力したい場合は、(gbd) コンソールに次の行を入力して 's' を再定義できます。

def s
step
info registers sp
end

コマンド「s」を使用するたびに、実際にspレジスタのステップアンドプリントを実行します

于 2013-07-10T14:57:41.727 に答える
1

これを行う組み込みの方法はありません。

hookpost-stop を使用して明示的なリスト コマンドを呼び出すことで、機能させることができるかもしれません。

ただし、ほとんどの人は代わりに多くの gdb GUI の 1 つを使用していると思います。

于 2013-05-24T18:50:15.813 に答える