如何在gdb中反汇编数据类型和宏?
我要反汇编如何在gdb中反汇编数据类型和宏?,gdb,Gdb,我要反汇编项: 341 item *item_get(const char *key, const size_t nkey) { 342 item *it; ... 如何正确地执行它?我通常发现,如果GDB能够正确地找到标题,那么打印变量最终会得到一个不错的描述。尝试: (gdb) info item Undefined info command: "item". Try "help info". (gdb) disas item Attempt to use a type name
项
:
341 item *item_get(const char *key, const size_t nkey) {
342 item *it;
...
如何正确地执行它?我通常发现,如果GDB能够正确地找到标题,那么打印变量最终会得到一个不错的描述。尝试:
(gdb) info item
Undefined info command: "item". Try "help info".
(gdb) disas item
Attempt to use a type name as an expression
关于您的术语:“反汇编”是指以二进制形式(例如
0x58
)获取机器指令,并将其转换为我们能够理解的内容(例如pop%eax
)。因此,您应该只对函数进行反汇编。在您的示例中,item
是一种数据类型,it
是指向item
类型的对象的本地定义指针。
gdb> p *it