В GDB можно распечатать переменную после выполнения оператора, но до того, как сфера выходит?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 В GDB можно распечатать переменную после выполнения оператора, но до того, как сфера выходит?

Сообщение Anonymous »

Я отлаживаю программу C/C ++ с использованием GDB. Я хочу распечатать значение переменной сразу после выполнения конкретного оператора, но до выхода текущего объема (например, функции или тела цикла).

Код: Выделить всё

for (int i = 0; i < 10; ++i) {
int x = i * 2;  // I want to print x *after* this line, but before leaving the scope
}
Things I've tried:
  • Setting a breakpoint on the line and using next to run: will leave the scope, cannot print x.
  • using stepi: low level details seem to matter -- i don't know when to stop.
Is there a reliable way in GDB to:
  • Wait until a statement finishes executing,
  • Still be inside the same scope (so local variables are alive), and
  • Print a variable
I'm open to scripting solutions or using probe, finish, stepi, etc., as До тех пор, пока это может работать надежно через такие края (лучше может быть автоматизировано).

Подробнее здесь: https://stackoverflow.com/questions/796 ... but-before
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»