Выполнить в строку в GDB

Я могу выполнить до определенной строки в GDB, поместив точку останова, а затем нажав c продолжить исполнение.

b <line_number> ; insert breakpoint
c ; run up to the breakpoint
del <breakpoint_number> ; remove breakpoint

Есть ли команда для запуска до определенного номера строки, которая позволит избежать запуска вышеуказанной последовательности команд?

2 ответа

Решение

Еще проще - команда "до", которая автоматически генерирует временную точку останова и продолжается до ее местоположения.

Вы можете использовать временную точку останова вместо обычной точки останова. Это исключит шаг 3 в вашей последовательности команд:

(gdb) tbreak <line_number>
(gdb) continue

Временная точка останова похожа на обычную, за исключением того, что она будет удалена при нажатии:

(gdb) help tbreak 
Set a temporary breakpoint.
Like "break" except the breakpoint is only temporary,
so it will be deleted when hit.  Equivalent to "break" followed
by using "enable delete" on the breakpoint number.
Другие вопросы по тегам