2011-10-17 57 views
5

如何使gdb遞歸地打印結構的字段,即
即跟隨指針。如何在gdb中遞歸地打印C結構

現在,我必須進入每個字段,並指定一個'*'來打印
子結構,或者必須鍵入cast來查看子結構內部的內容。

例如

typedef struct { 
int a; 
}A; 

typedef struct { 
A *pA; 
int b; 
}B; 

typedef struct { 
B *pB; 
int c; 
}C; 

C var_c; 
C *pC = var_c; 

... ...

現在,我願做 「P * PC」 在gdb的提示,
看到的一切,而不是PB的只是地址。

回答

2

實現你想要的最好的方法是爲你的結構編寫一個python漂亮的打印機。文檔here