Как контролировать переменные в GDB и зарегистрировать его, если он соблюдает определенные условия?

Я хотел бы знать, существует ли какой-либо путь, которым я могу контролировать значение переменной до, например, счетчик достигает значения, и затем зарегистрируйте вывод значения переменной во время каждого встречного значения?

24
задан Ciro Santilli 新疆改造中心法轮功六四事件 7 November 2015 в 18:42
поделиться

2 ответа

Установите точку наблюдения на счетчике:

(gdb) watch var

И сделайте эту точку наблюдения условной:

(gdb) cond <watchpoint_number> var>=value

Если вы хотите вести журнал в файл:

(gdb) set logging file <filename>
(gdb) set logging on

По умолчанию gdb ведет журнал в gdb.txt

29
ответ дан 28 November 2019 в 23:59
поделиться

Вы можете использовать точки наблюдения , чтобы заставить GDB отслеживать значение переменной и прерывать выполнение программы при изменении значения. После остановки выполнения вы можете использовать набор команд gdb для проверки и печати значения. Я не уверен, что вы можете скрипт gdb делать это автоматически каждый раз, когда он ломается.

3
ответ дан 28 November 2019 в 23:59
поделиться
Другие вопросы по тегам:

Похожие вопросы: