Могу ли я установить точку останова на «доступ к памяти» в GDB?

То, что вы ищете, называется debugging точкой наблюдения.

Использование

(gdb) watch foo: следите за значением переменной foo

(gdb) watch *(int*)0x12345678: следите memory-access за значением, указанным адресом, приведенным debugger к любому желаемому типу

(gdb) watch a*b + c/d: просмотрите cpp произвольно сложное выражение, допустимое memory-access на родном языке программы

Точки c++ наблюдения бывают трех видов:

  • watch: gdb сломается при записи
  • rwatch: GDB прерывает работу, если происходит чтение
  • awatch: gdb сломается в обоих случаях

Вы memory-access можете выбрать наиболее подходящий memory-access для ваших нужд.

Дополнительные cpp сведения см. на this.

c++

debugging

gdb

breakpoints

memory-access

2022-11-08T14:06:19+00:00
Вопросы с похожей тематикой, как у вопроса:

Могу ли я установить точку останова на «доступ к памяти» в GDB?