Исследование значений в то время как отладка

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

Выбор Workspace

Чтобы исследовать переменную во время отладки, необходимо сначала выбрать ее рабочую область. Переменные, которые вы присваиваете через Командное окно или создаете скрипты использования, принадлежат базовому рабочему пространству. Переменные, которые вы создаете в функции, принадлежат своей собственной функциональной рабочей области. Чтобы просмотреть текущую рабочую область, выберите вкладку Editor. Поле Function Call Stack показывает текущую рабочую область. Также можно использовать функцию dbstack в Командном окне.

Чтобы выбрать или изменить рабочую область для переменной, вы хотите просмотреть, использовать любой из этих методов:

  • От вкладки Editor, в разделе Debug, выбирают рабочую область из списка меню Function Call Stack.

  • Из Командного окна используйте dbup и функции dbdown, чтобы выбрать предыдущую или следующую рабочую область в Стеке вызовов функции.

    Чтобы перечислить переменные в текущей рабочей области, используйте who или whos.

Просмотр значения переменных

Существует несколько способов просмотреть значение переменной при отладке программы:

  • Просмотрите значения переменных в браузере Рабочей области и Редакторе Переменных.

    Браузер Рабочей области отображает все переменные в текущей рабочей области. Столбец значений браузера Рабочей области показывает текущее значение переменной. Чтобы видеть больше деталей, дважды кликните переменную. Редактор Переменных открывается, отображая содержимое для той переменной. Также можно использовать функцию openvar, чтобы открыть переменную в Редакторе Переменных.

  • Просмотрите значения переменных в Редакторе MATLAB®.

    Используйте свою мышь, чтобы выбрать переменную или уравнение. Щелкните правой кнопкой и выберите Evaluate Selection из контекстного меню. Командное окно отображает значение переменной или уравнения.

    Примечание

    Вы не можете оценить выбор, в то время как MATLAB занят, например, петляя.

  • Просмотрите значения переменных как всплывающую подсказку в редакторе MATLAB.

    Для этого расположите свой указатель мыши над переменной. Текущее значение переменной появляется во всплывающей подсказке. Всплывающая подсказка остается в поле зрения, пока вы не перемещаете указатель. Если вы испытываете затруднения, заставляя всплывающую подсказку появиться, кликните по строке, содержащей переменную, и затем переместите указатель рядом с переменной.

    Всплывающие подсказки всегда включаются при отладке файла в Редакторе. Чтобы просмотреть всплывающие подсказки при редактировании файла в Редакторе, включите им в настройках MATLAB.

    1. На вкладке «Главная страница (Home)» в разделе «Конфигурация (Environment)» нажмите «Настройки (Preferences)». Затем выберите MATLAB> Editor/Debugger> Display.

    2. Под General display options выберите Enable datatips in edit mode.

  • Просмотрите значения переменных в Командном окне.

    Чтобы видеть все переменные в настоящее время в рабочей области, вызовите функцию who. Чтобы просмотреть текущее значение переменной, введите имя переменной в Командном окне. Для примера, чтобы видеть значение переменной n, n типа и нажимают Enter. Командное окно отображает имя переменной и его значение.

Когда вы устанавливаете точку останова в функции и попытке просмотреть значение переменной в родительской рабочей области, значение той переменной силы не быть доступными. Эта ошибка происходит, когда вы пытаетесь получить доступ к переменной, в то время как MATLAB находится в процессе перезаписи ее. В таких случаях MATLAB возвращает следующее сообщение, где x представляет переменную, значение которой вы пытаетесь исследовать.

K>> x
Reference to a called function result under construction x. 
Ошибка происходит, выбираете ли вы родительскую рабочую область при помощи команды dbup или при помощи поля Function Call Stack в разделе Debug вкладки Editor.

Похожие темы