gdb步骤调试一个C程序

时间:2013-02-10 07:06:18

标签: c gdb

考虑一个函数有10行代码的情况,你正在通过GDB进行一步调试,并在第六行。 你意识到第4行的函数调用因为你在第5行而做了一些事情。

假设第4行函数调用没有做任何激烈的事情(mem free等)你想让你的SP点@第4行并进入该函数而不重新运行该测试用例。

我可以通过修改注册表来实现。

我想知道的是,是否有一些gdb命令可以帮助我实现上述功能而无需手动注册表模式。

谢谢,

3 个答案:

答案 0 :(得分:3)

使用here所述的jump命令。

答案 1 :(得分:0)

只需在你需要的行上设置一个断点(使用break命令)并跳转到它(使用jump命令)。

答案 2 :(得分:0)

如果我理解正确,你想“退后一步”。自版本7起,这得到了GDP的支持。请参阅manualtutorialrelated Stackoverflow topic