首页 > 编程笔记 > MATLAB笔记 阅读:11

MATLAB try catch语句的用法(附带实例)

MATLAB 中 try-catch 结构的具体语法形式如下:
try
    command1 % 命令组 1 总是首先被执行。若正确,则执行完成后结束此结构
catch
    command2 % 当命令组 1 执行发生错误时,执行命令组 2
end
1) 只有当 MATLAB 执行命令组 1 发生错误时,才执行命令组 2。try-catch 结构只提供两个可供选择的命令组。

2) 当执行命令组发生错误时,可调用 lasterr() 函数查询出错的原因。如果函数 lasterr() 的运行结果为空字符串,则表示命令组 1 被成功执行了。

3) 如果在执行命令组 2 时又发生了错误,则 MATLAB 将结束该结构。

【实例】try-catch 结构的简单运用示例。在编辑器窗口中编写 M 文件并命名为 ex.m。
Num = 6;
Mat = magic(4)  % 生成一个 4×4 维的矩阵 Mat
try
    Mat_Num = Mat(Num,:)  % 取 Mat 的第 Num 行元素
catch
    Mat_end = Mat(end,:)  % 若 Mat 没有第 Num 行元素,则取 Mat 的最后一行元素
end
lasterr  % 显示出错原因
运行后得到如下结果:
Mat =
    16     2     3    13
     5    11    10     8
     9     7     6    12
     4    14    15     1

Mat_end =
     4    14    15     1

ans =
    '位置 1 处的索引超出数组边界。索引不能超过 4。'

相关文章