MATLAB 程序调试 程序调试是一个很基本也很重要的问题。人不是神,没有谁能一遍写出完全正确没有错误的程序。 错误的程序大致分为以下三类: 1 拼写错误:比如应该是sum(),写成了 smu();这样的错误程序运行时会提示错误。 2 语法错误:比如 6/0 这样的就会造成错误;这样的程序不一定会报错,但是结果显示的完全不正常。 3 逻辑错误:这样的错误非常隐蔽,往往是对算法考虑不周全。程序可以顺利通过,显示的结果也是正常的数值,但是与先验的预期不符合。 那么:如何发现错误呢? 最简单的莫过于 MATLAB 直接告诉你哪行出错了,但是很多时候情况并不这么简单。 比如第 35 行出错了,但是出错的原因是因为上面几行的一些中间结果出错导致;或者程序根本没有报错,但是最后的结果不对。 这种时候就需要单步调试。 断点: 所谓断点,就是程序运行啊运行,运行到有断点的这一步会自动停住,方便你在中间环节调试,监督程序运行。 程序运行到当前断点: 步进: 在当前断点处查看变量: STEP IN, 查看子函数运行情况: 子函数中的步进和跳出: 以上说的是MATLAB 调试程序中最常用的方法。 此外再介绍一个函数:DBSTOP 在一般的情况下,MATLAB 运行程序时遇到错误会自动停止运行。 而这个函数可以实现遇到错误时自动进入调试状态,停在当前出错行。 语法格式: DBSTOP IF ERROR 当然还有很多其他格式,具体的就看 MATLAB HELP 吧。