如何在gdb中访问特定的全局变量?
问题描述:
可能重复:
Can I set a breakpoint on 'memory access' in GDB?如何在gdb中访问特定的全局变量?
我想跟踪特定变量的方式初始化,
可以用gdb做这样的工作?
答
gdb命令watch <expr>
在写入时设置断点,在读取时设置为rwatch
,在读取或写入时设置为awatch
。 ,你会您可以使用这些断点,有两个方面的考虑:
- 不能在他们使用gdb的表达式(如
$esp+...
) - 你需要对他们的支持。软件支持远比硬件慢得多。要了解您的gdb是否可以使用硬件观察点,请参阅
show can-use-hw-watchpoints
的输出。