调试MATLAB:在特定行的错误之前中断

use*_*062 4 debugging matlab

我试图在我的代码中找到错误.错误是在第3级的函数中,最初工作正常,但不知何故在某一点停止(该函数在循环内被多次调用).

该错误表示该变量未定义(它不会在开始时发生,但在超过150次后发生).我可以在句子上面写一些条件来在错误发生前停止吗?然后我就知道为什么这个变量不再被定义了.

cha*_*pjc 8

使用dbstop if error.dbstop发生错误时,该命令将带您在已停止的函数中执行命令提示符.

您也可能会变得棘手并使用dbstop in FILESPEC at LINENO if EXPRESSION语法.例如,如果要在错误跳过的行之前不存在变量,则要中断,例如,第224行myFun.m:

dbstop in myFun.m at 224 if ~exist('x','var')
Run Code Online (Sandbox Code Playgroud)

然后它将在第224行停止myFun.mif if x不是变量.