gpt4 book ai didi

c - 在 gdb 中调试时如何检查在哪个文件中声明了变量?

转载 作者:太空宇宙 更新时间:2023-11-03 23:29:56 24 4
gpt4 key购买 nike

我正在浏览分布在多个文件中的代码。我有一个变量 x,我在文件 A.c 中使用它,它在 B.h 中声明。我在 emacs 下使用 gdb 进行调试。在文件 A.c 中,我如何检查我的变量 x 在哪个文件中声明?

最佳答案

尝试

info variables <variable name>

它是正则表达式搜索,因此结果列表可能很长。

更新

因为它是一个正则表达式搜索,请尝试在开始处附加 ^ 并在结尾处附加 $ 以获得精确匹配(可能有一些更好的方法,我不是正则表达式的专家) .

info variables ^<variable name>

如果太烦人试试extending GDB commands做这个。

(gdb)define vardef
(gdb)info variables ^$arg0$
(gdb)end

用法

(gdb) vardef <variable name>

您并添加此扩展以启动脚本。

附言在上面的变量名称的所有实例中删除“<>”

关于c - 在 gdb 中调试时如何检查在哪个文件中声明了变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18376300/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com