我可以使用gdb跳过一行而不必input行号吗?
我知道我可以使用jump
来设置程序计数器到一个特定的行,所以我可以跳过一个或多个行(或再次执行一些行)。 我可以轻松跳过下一行而不必input行号吗?
这在运行时会“非常方便”地发表评论。
jump +1
跳到下一行,即跳过当前行。 您可能还想将其与tbreak +1
结合以在跳转目标处设置临时断点。
请参阅http://sourceware.org/gdb/current/onlinedocs/gdb/Specify-Location.html了解更多使用gdbexpression位置的方法。;
请注意,没有断点, gdb
可能会继续正常执行而不是跳转。 所以如果跳跃似乎不起作用,请确保您在目的地设置断点。
我有我的.gdbinit
configuration文件中的以下内容:
define skip tbreak +1 jump +1 end
所以只需在gdb中inputskip
即可跳过一行。
在执行期间跳过任何数量的行:
[Current Position -- in GDB] Line N .......... // Lines To Skip .......... .......... [Line To Execute - After Jumping] Line M
在M行上放置一个断点:
gdb$b M
跳到行M:
gdb$jump M