图

Matlab 的程序调试及其他功能

预备知识 Matlab 的函数

程序调试

图
图1:在行首设置 Breakpoint

   若要调试程序,可选择一行代码并单击该行前面的横线,这时会出现红色圆点 Breakpoint (图 1 ),程序运行到 Breakpoint 会暂停.

   此时要查看变量情况,可通过 Workspace 查看各个变量的情况,也可用光标悬停在某个变量上.还可以用 Command Window 改变某些变量的值,或画图等.在这种调试状态下,也可以通过 Edit 菜单中的一些按钮控制接下来程序如何运行(图 2 ).

图
图2:Step 菜单

   其中“Continue”(快捷键 F5)是继续运行直到下一个 Breakpoint 或结束.“Step”(F10)是运行到下一行,“Step In”(F11)是进入子程序并暂停,“Step Out”是运行完当前子程序并回到子程序被调用的地方.“Run to Cursor”是运行到光标所在处.

warningerror 函数

   有时候当我们的程序中出现了某个错误时, 程序会终止并在控制行中返回一个错误信息, 例如我们给 sin 函数输入两个变量时, 控制行的 error 信息将提示变量个数太多.

1
2
3
>> sin(1,2)
Error using sin
Too many input arguments.
另一些情况下当错误不是那么严重时, 我们会得到一个 warning 提示, 程序在输出提示后将继续运行.

   我们可以在我们自己的脚本或函数中用 errorwarning 函数达到同样的效果

1
2
3
4
5
6
7
8
9
function myfun(char)
if char == 'w'
    warning('this is a warning');
elseif char == 'e'
    error('this is an error');
else
    disp('Hello World!');
end
end

   当 errorwarning 函数被执行时, 控制行不但会输出对应的字符串, 还会输出它们所在的文件和行号, 如

1
2
3
>> myfun w
Warning: this is a warning
> In myfun (line 3)
单击 myfunline 3, 可在 Editor 中显示对应位置. 若 myfun 函数被其他函数调用, 那么调用的位置也会被逐级列出. 使用 warning 的效果类似, 但程序不会被终止.

分节

   在行首用两个百分号“%%” 可以对代码进行分节(图 3 ).这样做一是可以使代码结构更清晰,二是可以单独选择某一节运行(Edit 菜单中的“Run Section”按钮).

图
图3:代码分节

工具箱(Toolbox)

   在购买和安装 Matlab 软件时,可以选择各种各样的工具箱,常用的工具箱有曲线拟合(Curve Fitting,从离散的数据点得到一条曲线),图像处理(Image Processing,图像变换,增强,降噪,二值化等),图像获取(Image Acquisition,从相机获取图像),Matlab 编译器(MATLAB Compiler,编译代码,提高运行速度).注意使用了工具箱功能的代码在没有工具箱的 Matlab 软件上将无法运行.

致读者: 小时物理百科一直以来坚持所有内容免费且不做广告,这导致我们处于日渐严重的亏损状态。长此以往很可能会最终导致我们不得不选择商业化,例如大量广告,内容付费,会员制,甚至被收购。因此,我们鼓起勇气在此请求广大读者热心捐款,使网站得以健康发展。如果看到这条信息的每位读者能慷慨捐助 10 元,我们几天内就能脱离亏损状态,并保证网站能在接下来的一整年里向所有读者继续免费提供优质内容。感谢您的支持。
—— 小时(项目创始人)

编辑词条 返回目录 返回主页 捐助项目 © 小时物理百科 保留一切权利