2013-05-20 7 views
13

Jak sprawdzić bieżący numer wiersza, w którym jestem zatrzymany podczas debugowania za pomocą GDB? Myślałem, że to będzie oczywiste (i może jest), ale nie widzę tego na GDB Cheat Sheet.GDB: Jak sprawdzić bieżący numer linii podczas debugowania?

+0

możliwy duplikat [gdb: jak wydrukować bieżący wiersz lub znaleźć bieżący numer linii?] (Http://stackoverflow.com/questions/14581837/gdb-how-to-print-the-current- line-or-find-the-current-line-number) –

Odpowiedz

23

Niektóre kopanie wokół ujawniła następujące metody:

  1. frame: Polecenie to było dokładnie to, czego szukasz. Wyjście wyglądał następująco:

    (gdb) frame 
    #0 MyDialog::on_saveButton_clicked (this=0x72bf9e0) at src/ui/dialog/MyDialog.cxx:86 
    86   _item->save(); 
    (gdb) 
    
  2. where lub bt (ten sam efekt): drukuje się ten stos wywołań, kończąc na obecnej linii.

  3. list *$pc: Nie podaje dokładnej linii, ale drukuje otaczające linie z bieżącą linią w środku.
+1

Wiem, że wspominałeś o GDB, ale tak jak o sugestii próbowałeś używając gdbtui? Ma ładny terminal GUI, który pozwala zobaczyć linie bieżące i przestrzenne. Możesz także przewijać w dół za pomocą klawiszy kierunkowych klawiatury. – Nobilis

+0

@Nobilis Dzięki za cynk! gdbtui wygląda całkiem słodko! –

Powiązane problemy