-1

調べるコマンドGDB, x/10xw Addressで。の代わりに変数を使用できますか。repeat countたとえば、10 の代わりに変数を使用できますx/($var)xw Addressか?

これが私の .gdbinit の外観です。いくつかの計算を行い、変数 ( var3 ) を使用する必要があります

print_sn_list_hex を定義する

            set $var1 = $mcache->elem_size
            set $var2 = $mcache->blocking_factor
             set $var3 = ($var1) * ($var2) / 4
    x/$var3xw $sess # I want to pass a variable here 



   end

終わり

4

2 に答える 2

1

直接ではありませんが、gdb の「eval」コマンドを使用してこの効果を得ることができます。または、Python スクリプトを記述して、必要なほぼすべての種類の書式設定を行うことができます。

于 2014-06-26T21:42:19.983 に答える
0

eval上記のコマンドは完全に機能します。古いバージョンの GDB を使用していたため、最初は問題が発生しました。現在は完全に正常に動作しています。私の新しいコードは次のようになります:

print_sn_list_hex を定義する

        set $var1 = $mcache->elem_size
        set $var2 = $mcache->blocking_factor
         set $var3 = ($var1) * ($var2) / 4
         eval "x/%dxw %p",$var3,$sess
于 2014-06-27T20:09:54.463 に答える