【发布时间】:2011-05-25 16:05:17
【问题描述】:
在 Visual Studio 中,您可以右键单击任何代码并选择“设置下一条语句”,Visual Studio 将从那里开始执行代码。当您认为“等等,什么?”时,这真的很有用。并希望看到最后一段代码再次执行,而无需从头开始。
gdb 有没有类似的功能?例如,如果我注意到函数调用产生了意外值,我该如何再次调用函数?
这是 Mac OS X 上 xcode 3.2.5 下的 gdb。
【问题讨论】:
在 Visual Studio 中,您可以右键单击任何代码并选择“设置下一条语句”,Visual Studio 将从那里开始执行代码。当您认为“等等,什么?”时,这真的很有用。并希望看到最后一段代码再次执行,而无需从头开始。
gdb 有没有类似的功能?例如,如果我注意到函数调用产生了意外值,我该如何再次调用函数?
这是 Mac OS X 上 xcode 3.2.5 下的 gdb。
【问题讨论】:
使用 gdb jump 命令。更多信息here。
如果您只想重新执行具有某些价值的函数foo(int),则根本不必执行您要求的操作。以下应该可以工作((gdb) 提示):
break foo
print foo(42)
【讨论】:
感谢 Employed Russian 提供链接。我也发现了这个,虽然我没有足够新的 gdb 版本来使用它:
【讨论】: