Локальные переменные / Locals

Просмотр локальных переменных

Текущие значения переменных на шаге исполнения кода обычно можно посмотреть в разделе переменных.

По умолчанию, в Visual Studio сочетанием клавиш для открытия раздела локальных переменных является ALT + 4.

Существует также альтернативный вариант:

Редактирование локальных переменных

Во время есть возможность на лету изменить значение переменной и продолжить исполнение кода с текущей позиции. Для этого нужно поставить breakpoint и в окне переменных отладчика дважды кликнуть на значение переменной и внести новое значение.

Например, в Visual Studio это выглядит следующим образом:

Расчёт значений выражений во время отладки / Evaluate calculation variables in debugging

Если в процессе отладки возникает ситуация, когда нужно вычислить результат выражения (например, вычисление нового значения переменной), то вместо вместо вычисления на листочке, в уме или через заведение промежуточных переменных можно во время отладки поставит точку останова в нужном месте и выделить курсором выражение.

В появившейся контекстной подсказке / окне подсчёта будет значение выражения.

Visual Studio позволяет закреплять всплывающие подсказки (pinned tooltip), чтобы не выделять код каждый раз.

Контрольные значения / Watch

Если из списка переменных при отладке вас интересует лишь небольшая часть, то такие переменные можно выделить в отдельную категорию – Watch. Переменные, помещённые в Watch остаются в этом списке и после завершения сеанса отладки. В Watch также можно добавлять выражение, которое будет пересчитываться при обновлении переменных.

По умолчанию, в Visual Studio сочетанием клавиш для открытия окна Watch в Visual Studio является CTRL + ALT + W, {1; 4}.

В watch переменные автоматически не добавляют, их нужно самостоятельно перетащить/вписать в соответствующее поле.

Пример просмотра значения в переменной int и переменной типа char*[]:

Магия, как можно просматривать одномерный массив как двумерный:

  1. Добавляем переменную (для примера возьмём float *arr), хранящуюся наш массив в Watch.

  2. Переходим в Watch.

  3. Делаем cast указатель как двумерный: (float(*)[5])arr,2.

Last updated