GDB:跳过循环迭代
GDB: skip through loop iterations
如何使用 GDB 跳过 n 次迭代?我正在尝试调试一个 for 循环,我想进入迭代 703,而无需输入接下来的 703 次。
注意:我想留在循环中,只跳过 n 次迭代。
谢谢!
试试断点数:https://sourceware.org/gdb/onlinedocs/gdb/Conditions.html
(gdb) ignore bnum count
设置第bnum个断点的忽略次数为count。到达断点的下一个计数次数,您的程序的执行不会停止;除了减少忽略计数,GDB 不采取任何行动。
我找到了解决方案:
考虑这段代码:
for(int i = 0; i < 1000; i++) {
printf("%d\n",i);
}
在 GDB 中,您必须键入:'break n'(其中 n 是 'for' 循环的行号)然后 'c x' - 其中 x 是您要跳过循环的次数。
如何使用 GDB 跳过 n 次迭代?我正在尝试调试一个 for 循环,我想进入迭代 703,而无需输入接下来的 703 次。
注意:我想留在循环中,只跳过 n 次迭代。
谢谢!
试试断点数:https://sourceware.org/gdb/onlinedocs/gdb/Conditions.html
(gdb) ignore bnum count
设置第bnum个断点的忽略次数为count。到达断点的下一个计数次数,您的程序的执行不会停止;除了减少忽略计数,GDB 不采取任何行动。
我找到了解决方案:
考虑这段代码:
for(int i = 0; i < 1000; i++) {
printf("%d\n",i);
}
在 GDB 中,您必须键入:'break n'(其中 n 是 'for' 循环的行号)然后 'c x' - 其中 x 是您要跳过循环的次数。