我在emacs中运行gdb时刚刚发现C-x C-a C-j
(跳转到游标)。我最初假设它相当于在光标所在的位置设置中断并继续(c
)到该语句。但是我似乎正在观察当使用跳转时没有任何干预语句(在prev断点和当前光标位置之间)正在执行的行为。任何人都可以确认或否认这个吗?
我猜如果它没有执行语句,它相当于能够从调试器中注释出一段代码',即无需返回到src,显式注释掉然后重新编译。我可以看到它可能有用,但它肯定不是我所期待的。
如果发生了这种情况,那么后续问题就是“继续游标”命令(干预语句执行执行)?
答案 0 :(得分:2)
我相信您需要的是C-x C-a C-u
(M-x gud-until
)而不是M-x gud-jump
。正如Emacs手册中明确指出的那样,后者只是
将程序的执行点传输到当前行。换句话说,程序执行的下一行将是您给出命令的那一行[...]有关详细信息,请参阅有关
jump
的GDB手册条目。