Spec-Zone.ru › Octave 9

Далее: Стек вызовов, Предыдущее: Точки останова, Вверх: Отладка [Оглавление][Индекс]

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-файла, оставайтесь в существующей функции.

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

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

Примечание по программированию: dbnext является псевдонимом для dbstep и может использоваться взаимозаменяемо.

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

В режиме отладки нажатие клавиши ВВОД выполнит последнюю введенную команду. Это полезно, например, после попадания на точку останова и ввода 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/v9.2.0/Debug-Mode.html

Spec-Zone.ru

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