我正在浏览遍布多个文件的代码。我有一个变量x,我在文件A.c中使用它,并在B.h中声明。我在emacs下使用gdb进行调试。在文件A.c中,我如何检查哪个文件是我声明的变量x?
答案 0 :(得分:2)
尝试
info variables <variable name>
它是一个正则表达式搜索,因此结果列表可能很长。
更新
由于正则表达式搜索尝试在开始时加^
而在结尾加$
以获得完全匹配(可能有一些更好的方法,我不是正则表达式的主人)。
info variables ^<variable name>
如果太烦人,请尝试extending GDB commands来执行此操作。
(gdb)define vardef
(gdb)info variables ^$arg0$
(gdb)end
使用
(gdb) vardef <variable name>
您可以添加此扩展程序以启动脚本。
P.S。在变量名称的所有实例中,请删除“&lt;&gt;”