dbup

Переключите текущую рабочую область к рабочей области вызывающей стороны в режиме отладки

Синтаксис

Описание

пример

dbup изменяет текущую рабочую область и функциональный контекст к рабочей области и функциональный контекст функции вызова или скрипта в режиме отладки. Затем можно исследовать вызов функция MATLAB® или скрипт, чтобы определить то, что заставило аргументы быть переданными вызванной функции.

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

Примеры

свернуть все

Создайте файл, myfile.m, это содержит эти операторы.

function n = myfile(x)
n = myfunction(x-1);

function z = myfunction(y)
z = 2 / y ;

Установите точку останова в myfunction и запустите myfile с входом 1. MATLAB делает паузу в функциональном myfunction, в линии z = 2 / y. Вызовите whos просмотреть переменные в текущей рабочей области.

dbstop in myfile>myfunction
myfile(1);
whos
Name      Size            Bytes  Class     Attributes

  y         1x1                 8  double    

Рабочая область содержит переменную y, который находится в контексте рабочей области для myfunction.

Запустите dbup команда, чтобы переключиться на рабочую область функции вызова, myfile. Затем вызовите whos.

dbup
whos
In workspace belonging to myfile (line 2)

  Name      Size            Bytes  Class     Attributes

  x         1x1                 8  double    

Рабочая область содержит переменную x, который находится в контексте рабочей области для myfile.

Советы

  • Если вы получаете сообщение об ошибке, такое как следующее, это означает, что родительская рабочая область находится в работе так, чтобы значение x недоступно:

    ??? Reference to a called function result under construction x

Представлено до R2006a