Spec-Zone.ru › Octave 8

13.4 Режим отладки

Существует три дополнительные вспомогательные функции, которые позволяют пользователю определить, в какой части выполнения скрипта Octave вошел в режим отладки, и вывести код в скрипте, окружающем точку, в которой Octave вошел в режим отладки.

: dbwhere ¶

В режиме отладки сообщает текущий файл и номер строки, где выполнение остановлено.

См. также: dbstack, dblist, dbstatus, dbcont, dbstep, dbup, dbdown.

: dbtype ¶
: dbtype lineno ¶
: dbtype startl:endl ¶
: dbtype startl:end ¶
: dbtype fcn ¶
: dbtype fcn lineno ¶
: dbtype fcn startl:endl ¶
: dbtype fcn startl:end ¶

Отображает файл скрипта с номерами строк.

При вызове без аргументов в режиме отладки отображает файл скрипта, который в настоящее время отлаживается.

Можно использовать необязательную спецификацию диапазона, чтобы отобразить только часть файла. Специальное ключевое слово "end" является допустимой спецификацией номера строки для последней строки файла.

При вызове с именем функции отображает этот файл скрипта с номерами строк.

См. также: dblist, dbwhere, dbstatus, dbstop.

: dblist ¶
: dblist n ¶

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

Если n не указано, по умолчанию используется 10 (+/- 5 строк).

См. также: dbwhere, dbtype, dbstack.

Вы также можете использовать isdebugmode для определения, активен ли в настоящее время отладчик.

: tf = isdebugmode () ¶

Возвращает true, если режим отладки активен, в противном случае false.

См. также: dbwhere, dbstack, dbstatus.

Режим отладки также позволяет выполнять пошаговое выполнение функций по одной строке с помощью команды dbstep.

: dbstep ¶
: dbstep n ¶
: dbstep in ¶
: dbstep out ¶
: dbnext … ¶

В режиме отладки выполняет следующие n строк кода.

Если n опущено, выполняется следующая одиночная строка кода. Если следующая строка кода определена в файле m-file, оставайтесь в существующей функции.

Использование dbstep in заставит выполнение следующей строки войти в любые файлы m, определенные в следующей строке.

Использование dbstep out заставит выполнение продолжить до тех пор, пока текущая функция не вернётся.

dbnext является псевдонимом для dbstep.

См. также: dbcont, dbquit.

В режиме отладки клавиша RETURN выполнит последнюю введенную команду. Это полезно, например, после попадания на точку останова и ввода dbstep один раз. После этого можно переходить по строкам кода по одной с помощью всего одной клавиши. Эта функция может быть отключена с помощью функции auto_repeat_debug_command.

: val = auto_repeat_debug_command () ¶
: old_val = auto_repeat_debug_command (new_val) ¶
: old_val = auto_repeat_debug_command (new_val, "local") ¶

Запрос или установка внутренней переменной, которая управляет тем, повторяются ли команды отладки автоматически, когда строка ввода пуста (ввод только RET).

При вызове изнутри функции с опцией "local", переменная изменяется локально для функции и для вызываемых ею подпрограмм. Исходное значение переменной восстанавливается при выходе из функции.

© 1996–2023 The Octave Project Developers
Permission is granted to make and distribute verbatim copies of this manual provided the copyright notice and this permission notice are preserved on all copies.
Permission is granted to copy and distribute modified versions of this manual under the conditions for verbatim copying, provided that the entire resulting derived work is distributed under the terms of a permission notice identical to this one.
Permission is granted to copy and distribute translations of this manual into another language, under the above conditions for modified versions.
https://docs.octave.org/v8.1.0/Debug-Mode.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API