4

我试图在我的代码中找到一个错误。错误出现在最初运行良好的第 3 级函数中,但不知何故在某一点停止(该函数在循环中被多次调用)。

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

4

3 回答 3

9

使用dbstop if error. 发生错误时,该dbstop命令将带您进入已停止功能中的命令提示符。

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

dbstop in myFun.m at 224 if ~exist('x','var')

然后它将在myFun.mif xis not a variable 的第 224 行停止。

于 2013-10-10T21:32:28.627 回答
4

类型

 dbstop if error

然后执行你的代码。

有关更多选项,请参阅doc 。dbstop

于 2013-10-10T21:32:31.180 回答
0

检查您是否超出了您正在迭代的数组或其他结构的范围

于 2013-10-10T21:30:38.177 回答