1. 程式人生 > >MATLAB中try...catch...end的用法

MATLAB中try...catch...end的用法

matlab的程式碼是按行執行的,如果碰到錯誤行,則程式中斷,try...catch...end可使可能出錯的程式碼不影響後面程式碼的繼續執行,也可以檢查,排查,解決程式的一些錯誤,增強程式碼的魯棒性和可靠

1、try...end try...end用於嘗試執行一段也許可能出錯的程式碼,比如:
m =rand(3,4);  n = magic(5); try      a= m*n;      disp(a) end  disp(m)


這段程式碼裡面,a = m*n執行會出錯,不滿足矩陣乘法的原則。所以,a= m*n和disp(a)不執行,但後面的disp(m)亦然會執行

2、try...catch...end

m = rand(3,4); n = magic(5); try      a =m*n;     disp(a) catch     disp(size(m))     disp(size(n)) end disp(m)
這裡面,當程式碰到  a =m*n;錯誤後,就會跳轉到catch裡面的語句,繼續執行,有點類似於if...else...end

3、try...catch...end用於檢查錯誤
m = rand(3,4); n = magic(5); try      a =m*n;     disp(a) catch err     disp(size(m))     disp(size(n)) end disp(m)