私はユーザー定義の構造体を持っています。アドレスを特定の型に変換するpython gdb
gdbでは、foo_tを指すアドレスがありますが、 たとえば、0xfe83ba56は、foo_t型のメモリ内の構造体を指します。
私はそのアドレスを型キャストによってfoo_tに変換できます。それで、必要ならば逆参照することができます。 (gdb)p(foo_t *)0xfe83ba56
gdbの中でpythonと同じようにどうですか?すでにfoo_t型のオブジェクトを指しているgdb.Valueオブジェクトがある場合は、そのアドレスを使用できます。ここでは、未処理のアドレスをgdb.Valueオブジェクトに変換しようとしています。
私はhttps://sourceware.org/gdb/onlinedocs/gdb/Values-From-Inferior.html#Values-From-Inferiorを探しましたが、SOの「類似の質問」セクションからの投稿はたくさんありましたが、正確な回答は見つかりませんでした。
私はこの答えを自分自身を知らないが、それは私に発生したカスタムタイプのプリンタは、おそらく正確にこれを実行する必要があることなので、多分あなたは、カスタムを見て、それを把握することができますタイププリンタは、例えばlibstdC++? https://gcc.gnu.org/git/?p=gcc.git;a=tree;f=libstdc%2B%2B-v3/python – zwol