例如,我想找出哪个内存地址存储值0xbffff5a0。 gdb可以给我一个具有此值的特定范围内的地址列表吗?
答案 0 :(得分:3)
简短的回答是肯定的。
GDB提供了一种宏语言功能。您可以定义宏函数以迭代地址范围,并与提供的值进行比较。这没有经过测试,但宏可能看起来像这样:
define findvalue
set $val=$arg0
set $p=(char *)$arg1
set $e=(char *)$arg2
while ($p < $e)
if ($val == *(int *)$p)
print (int *)$p
end
set $p=$p+1
end
end