13.5调用堆栈

正在调试的函数可能是一系列函数调用的叶节点。在检查了当前子程序中的值后,可能会查找问题发生在早期的代码中。使用dbupdbdown在一系列函数调用中上下移动,以定位变量最初采用错误值的位置。dbstack显示了函数调用的完整性以及当前正在进行的调试级别。

 
: dbstack
: dbstack n
: dbstack -completenames
: [stack, idx] = dbstack (…)

显示或返回当前调试函数堆栈信息。

带有可选参数n,省略n最里面的堆栈帧。

尽管被接受,但该参数-completenames被默默地忽略。Octave始终返回绝对文件名。

参数n-completenames可以按任何顺序指定和mayappear。

可选的返回参数堆栈是一个结构体数组,包含以下字段:

文件

函数代码所在的m文件的名称。

名称

具有断点的函数的名称。

线

活动断点的行号。

断点开始的行的列编号。

return参数idx指定的哪个元素堆栈结构体数组当前处于活动状态。

详见: dbup, dbdown, 数据库位置, 数据列表框, 数据库状态.

 
: dbup
: dbup n

在调试模式下,向上移动执行堆栈n框架。

如果n则向上移动一帧。

详见: dbstack, dbdown.

 
: dbdown
: dbdown n

在调试模式下,向下移动执行堆栈n框架。

如果n则向下移动一帧。

详见: dbstack, dbup.


版权所有 © 2024 Octave中文网

ICP备案/许可证号:黑ICP备2024030411号