(重新)从错误位置出错后启动Matlab

时间:2010-10-23 05:50:38

标签: debugging matlab

我正在调试一个需要大约10分钟才能运行的matlab脚本。在脚本结束时,我会对结果进行一些i / o和简单的计算,并且我一直遇到错误。是否有一种方法可以在脚本退出并出现错误后从某个运动中启动matlab - 数据仍在工作区中,因此我可以将所有代码注释掉,直到错误点,但我想知道如果有人知道更好的方法去做而不重新运行整个脚本(超懒/低效的方式)?

谢谢,

科罗拉多

2 个答案:

答案 0 :(得分:4)

是的,请使用dbstop。键入dbstop if error,然后运行脚本。它遇到错误的那一刻,它将在那里创建一个断点,你就在脚本的工作区中 - 这意味着你可以调试错误,保存数据;任何你想要的!以下是dbstop if error文档的摘要---还有其他方法dbstop,所以请查看:

  

dbstop if error

     

当您随后运行的任何MATLAB程序文件产生运行时错误时,停止执行,将MATLAB置于调试模式,暂停生成错误的行。停止执行的错误不包括在try...catch块中检测到的运行时错误。在未捕获的运行时错误之后,您无法恢复执行。使用dbquit退出调试模式。

答案 1 :(得分:3)

双百分号将启用“单元格模式”,允许您逐步运行少量代码块。听起来就像你在寻找什么。