[GDB请教]:如何打印出某地址的变量名?
我的本意是查看data/bss/heap/stack等段的内容,通过gdb命令main i se打印出各段的地址空间范围(为运行前只有text/data/bss显示)
然后使用x显示相应地址的内容,但是我发现x/100s就能显示出变量明,其他格式就不行。比如说,我想知道0x80496e4地址上是什么变量,那么应该怎么操作?x/4s 0x80496e4?
能否以16进制的方式显示内容的同时,也显示变量名?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
回复 1# ruger
另外,为啥x/8b 0x80496e4显示了9个地址范围,global_init+1没了?
(gdb) x/8sb 0x80496e4
0x80496e4 <data_start>: ""
0x80496e5 <data_start+1>: ""
0x80496e6 <data_start+2>: ""
0x80496e7 <data_start+3>: ""
0x80496e8 <global_init>: "\v"
0x80496ea <global_init+2>: ""
0x80496eb <global_init+3>: ""
0x80496ec <dtor_idx.5793>: ""
用objdump试试?
info symbol 地址