Jak usunąć pojedynczy punkt przerwania za pomocą GDB?


143

Mogę dodać punkt przerwania w GDB za pomocą:

b <filename>:<line no>

Jak mogę usunąć istniejący punkt przerwania w określonej lokalizacji?


czy próbowałeś D <filename>: <lino no>?
Eineki

Niestety nie: generuje błąd: „ostrzeżenie: zły licznik przerwania na poziomie lub w pobliżu '<file>: <no>'”
Chris Smith

1
@Eineki to punkt przerwania nr, a nie linia nr. Lubię: d <filename>:<breakpoint no>.
Kevin

Odpowiedzi:



281

Możesz wyświetlić listę punktów przerwania za pomocą:

info break

Spowoduje to wyświetlenie wszystkich punktów przerwania. Następnie punkt przerwania można usunąć według odpowiedniego numeru:

del 3

Na przykład:

 (gdb) info b
 Num     Type           Disp Enb Address    What
  3      breakpoint     keep y   0x004018c3 in timeCorrect at my3.c:215
  4      breakpoint     keep y   0x004295b0 in avi_write_packet atlibavformat/avienc.c:513
 (gdb) del 3
 (gdb) info b
 Num     Type           Disp Enb Address    What
  4      breakpoint     keep y   0x004295b0 in avi_write_packet atlibavformat/avienc.c:513

3
Można także skrócić info breakdoi b
Nickolai

22

Możesz usunąć wszystkie punkty przerwania za pomocą

del <start_breakpoint_num> - <end_breakpoint_num>

Aby wyświetlić start_breakpoint_num i end_breakpoint_num, użyj:

info break

4

Posługiwać się:

clear fileName:lineNum   // Removes all breakpoints at the specified line.
delete breakpoint number // Delete one breakpoint whose number is 'number'
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.