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

Начиная с R2021b. Замены исследуют значение в то время как отладка (R2021a).

При отладке файла кода можно просмотреть значение любой переменной в настоящее время в рабочей области в то время как MATLAB® приостановлен. Если вы хотите определить, производит ли строка кода ожидаемый результат или нет, исследование значений полезно. Если результат как ожидалось, можно продолжить запускать код или продвинуться в следующую строку. Если результат не состоит в том, как вы ожидаете, то та линия или предыдущая линия, может содержать ошибку.

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

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

  • Браузер рабочей области — браузер Рабочей области отображает все переменные в текущей рабочей области. Столбец значений браузера Рабочей области показывает текущее значение переменной.

    Workspace browser showing two variables, n and x, with the current value for each variable displayed in the Value column

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

  • Представление Editor и Live Editor — To значение переменной в Редакторе и Live Editor, установите свой курсор на переменную. Текущее значение переменной появляется во всплывающей подсказке. Всплывающая подсказка остается в поле зрения, пока вы не перемещаете курсор. Если вы испытываете затруднения, заставляя всплывающую подсказку появиться, кликните по линии, содержащей переменную, и затем переместите указатель рядом с переменной.

    Script with a data tip showing the value of the variable n

    Всплывающие подсказки всегда включаются при отладке в Редакторе. Чтобы отключить всплывающие подсказки в Live Editor или при редактировании файла в Редакторе, перейдите к вкладке View и нажмите кнопку Datatips прочь.

    Также можно просмотреть значение переменной или уравнения путем выбора его в Редакторе и Live Editor, щелчке правой кнопкой и выборе Evaluate Selection in Command Window. MATLAB отображает значение переменной или уравнения в Командном окне.

    Примечание

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

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

Просмотрите значение переменных вне текущей рабочей области

Когда вы отлаживаете функцию или когда вы продвигаетесь в вызванную функцию или файл, MATLAB отображает список функций, которые это выполнило прежде, чем сделать паузу в текущей линии. Список, также названный function call stack, показывают наверху файла в Редакторе или Live Editor. Список отображает функции в порядке, начиная слева с первого названного скрипта или функции, и заканчиваясь справа текущим скриптом или функцией, в которой приостановлен MATLAB.

Function call stack for plotRand showing plotRand as the first called script and mean as the current function

Также можно использовать dbstack функционируйте, чтобы просмотреть текущую рабочую область в Командном окне:

dbstack
> In mean (line 48)
In plotRand (line 5)

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

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

Function call stack with the drop-down list of workspaces for the plotRand script open

Также можно использовать dbup и dbdown функции в Командном окне, чтобы выбрать предыдущую или следующую рабочую область в стеке вызовов функции. Чтобы перечислить переменные в текущей рабочей области, использовать who или whos.

При попытке просмотреть значение переменной в различной рабочей области, в то время как MATLAB находится в процессе перезаписи его, MATLAB отображает ошибку в Командном окне.

K>> x
Variable "x" is inaccessible. When a variable appears on both sides of an assignment
statement, the variable may become temporarily unavailable during processing. 
Ошибка происходит, выбираете ли вы рабочую область при помощи выпадающего списка справа от стека вызовов функции или dbup команда.

Похожие темы

Для просмотра документации необходимо авторизоваться на сайте