我正在调试一个需要大约10分钟才能运行的matlab脚本。在脚本结束时,我会对结果进行一些i / o和简单的计算,并且我一直遇到错误。是否有一种方法可以在脚本退出并出现错误后从某个运动中启动matlab - 数据仍在工作区中,因此我可以将所有代码注释掉,直到错误点,但我想知道如果有人知道更好的方法去做而不重新运行整个脚本(超懒/低效的方式)?
谢谢,
科罗拉多
答案 0 :(得分:4)
是的,请使用dbstop
。键入dbstop if error
,然后运行脚本。它遇到错误的那一刻,它将在那里创建一个断点,你就在脚本的工作区中 - 这意味着你可以调试错误,保存数据;任何你想要的!以下是dbstop if error
文档的摘要---还有其他方法dbstop
,所以请查看:
dbstop if error
当您随后运行的任何MATLAB程序文件产生运行时错误时,停止执行,将MATLAB置于调试模式,暂停生成错误的行。停止执行的错误不包括在
try...catch
块中检测到的运行时错误。在未捕获的运行时错误之后,您无法恢复执行。使用dbquit退出调试模式。
答案 1 :(得分:3)
双百分号将启用“单元格模式”,允许您逐步运行少量代码块。听起来就像你在寻找什么。