gcc (GCC) 4.1.2
c89
Red Hat Enterprise Linux Server release 5.4
2.6.18-164.el5
GNU gdb Fedora (6.8-37.el5)使用以下调试标志-ggdb进行编译
我正在寻找一种在远程服务器上进行调试的方法。
目前我正在使用gdb进行调试。
但是,我想打印一个结构的内容,以查看元素被赋予了什么值。
我可以这样做:
p media_description
$2 = (sdp_media_description_t *) 0xb7a80318然而,这只给了我结构的内存地址。
有没有打印结构元素的地方?
非常感谢你的建议,
=====编辑======
sdp_media_description_t *media_description = NULL;
media_description = get_item(sdp_media_des_list, outer);上面的代码应该返回一个指向结构实例的指针。
发布于 2010-12-29 13:21:28
也许你有一个指向结构的指针,而不是一个结构?
如果是这种情况,你可以在打印时取消引用指针,即
P *media_description
此外,如果您不想在控制台模式下使用gdb并拥有您喜欢的图形化前端,您应该能够远程使用它,方法是在被调试的计算机上运行gdbserver并在gui驱动的开发计算机上运行gdb,或者在被测计算机上运行所有内容并使用X window system的远程功能在您所在的计算机上显示它。
发布于 2010-12-29 13:21:18
由于media_description显然是一个指针,因此您需要打印它所指向的结构:
p *media_descriptionhttps://stackoverflow.com/questions/4551623
复制相似问题