0

インターフェイスの詳細を保持するポインターの配列があります。例えば

tIfInfoStruct      *gapIfTable[16];

インターフェイスの作成中にポインターにメモリが割り当てられました。例えば

gapIfTable[14] = 0x39cc345.

一連の操作の後、 の値は にgapIfTable[14]なりNULL(0x0)ます。プログラムのどの部分がメモリを解放しているのか、見たいです。gapIfTable[14]を使用して追跡できるかどうか

gdb> watch *0x39cc345

上記のメモリ アドレスが になったときにプログラムを gdb で停止してNULL、Gdb でバック トレースを取得して原因を特定できるようにします。マルチスレッドプログラムを実行しています。

私の理解が間違っている場合は修正してください。間違っている場合は、いくつかの解決策を教えてください。

4

1 に答える 1

0

gdb> ウォッチ *0x39cc345

0x39cc345これは、になる場所のメモリではなく、場所 のメモリを監視します。&gapIfTable[14]NULL

watch *(gapIfTable+14)したがって、おそらく代わりに使用したいと思うでしょう。

于 2013-03-09T06:03:59.090 に答える