在gdb中有没有办法获得结构的基本数据类型?
假设以下结构
typedef struct _trial
{
int i;
double j;
}trial_t;
在gdb中
(gdb) whatis trial_t
type = struct _trial
(gdb) whatis _trial
No symbol "_trial" in current context.
(gdb)
任何解决方法?
我知道这适用于简单的typedef
typedef unsigned char BYTE;
BYTE var;
(gdb)whatis var
type = BYTE
(gdb)whatis BYTE
BYTE = unsigned char
答案 0 :(得分:3)
您可能需要ptype
ptype接受与whatis相同的参数,但打印详细信息 类型的描述,而不仅仅是类型的名称。
(gdb) ptype struct _trial
甚至:
(gdb) ptype trial_t
与whatis相反,ptype始终在其参数中展开任何typedef 声明