如何在GDB中查看像数组一样的指针?
假设已定义: int a[100]
类型print a
然后gdb将自动将其显示为数组: 1, 2, 3, 4...
但是,如果将a作为参数传递给函数,那么gdb会将其视为普通的int指针,类型print a
将显示: (int *)0x7fffffffdaa0
。 如果我想查看数组,我该怎么办?
看到这里。 总之,你应该这样做:
p *array@len
*(T (*)[N])p
其中T是类型,N是元素的数量,p是指针。
使用x
命令。
(gdb) x/100w a