3

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

假设第 4 行函数调用没有做任何剧烈的事情(无内存等),您希望在第 4 行创建 SP 点并进入该函数而不重新运行该测试用例。

我已经能够通过修改注册表来做到这一点。

我想知道的是,是否有一些 gdb 命令可以帮助我在没有手动注册表模式的情况下实现上述目标。

谢谢,

4

3 回答 3

3

使用这里jump描述的命令。

于 2013-02-10T07:08:08.893 回答
0

如果我理解正确,您想“退后一步”。GDB 从版本 7 开始支持这一点。请参阅手册教程相关的 Stackoverflow 主题

于 2013-02-12T07:54:14.570 回答
0

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

于 2013-02-10T07:10:03.690 回答