Подтвердить что ты не робот

GDB: как проверить текущий номер строки во время отладки

Как проверить текущий номер строки, которую я остановил при отладке с помощью GDB? Я бы подумал, что это будет очевидно (и, возможно, это так), но я не вижу его на GDB Cheat Sheet.

4b9b3361

Ответ 1

Некоторые копания выявили следующие методы:

  • frame: Эта команда была именно тем, что я искал. Результат выглядел следующим образом:

    (gdb) frame
    #0  MyDialog::on_saveButton_clicked (this=0x72bf9e0) at src/ui/dialog/MyDialog.cxx:86
    86          _item->save();
    (gdb) 
    
  • where или bt (тот же эффект): это выдает стек вызовов, заканчивающийся на текущей строке.

  • list *$pc: Это не говорит вам точную строку, но она печатает окружающие строки с текущей строкой в ​​центре.