MATLAB try catch语句的用法(附带实例)
MATLAB 中 try-catch 结构的具体语法形式如下:
2) 当执行命令组发生错误时,可调用 lasterr() 函数查询出错的原因。如果函数 lasterr() 的运行结果为空字符串,则表示命令组 1 被成功执行了。
3) 如果在执行命令组 2 时又发生了错误,则 MATLAB 将结束该结构。
【实例】try-catch 结构的简单运用示例。在编辑器窗口中编写 M 文件并命名为 ex.m。
try command1 % 命令组 1 总是首先被执行。若正确,则执行完成后结束此结构 catch command2 % 当命令组 1 执行发生错误时,执行命令组 2 end1) 只有当 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。'