Matlab之異常處理機制

2021-10-04 11:09:31 字數 1324 閱讀 9757

優秀的程式設計師能夠指導使用者如何使用他編寫的程式,而且在使用者使用不當時,能夠給出錯誤提示資訊,並引導使用者正確使用函式。

例子:先建立計算階乘n!=n*(n-1)(n-2)……21,然後給函式ex(n)輸入正確的引數和錯誤的引數。

function ex

(n) m =1;

ticfor k =

2: n

m = m * k;

endtoc

結果見下圖:

程式並沒有報錯。其實輸入的n的值已經不在k的取值範圍了。此時應該提示使用者輸入有錯。

程式新增如下語句:

function ex

(n) m =1;

ticif n <

0error

('input must be positive,stopped');

endfor k =

2: n

m = m * k;

endtoc

執行見下圖:

matlab程式設計時很多錯誤是由於越界造成的,尤其是使用矩陣時,要注意引用矩陣位置不要超過他的邊界。另外,如果使用者輸入的函式引數數目超過設定的最大個數,或者型別不合要求也會出現這種錯誤。

還有對於輸入引數數目小於設定個數的情形,程式設計師在編寫程式時也應當注意處理這種情況,採用nargin函式可以判斷輸入引數的個數,從而設定為被指定的輸入引數的值或者直接報錯。

例子:利用nargin函式,實現兩個多項式的相加,並具有一定的報錯功能。

function p =

ex(a,b)

if nargin ==

1 b =

zeros(4

,1) elseif nargin ==

0error

('empty input');

enda =a(

:).';b = b(:).'

; na =

length

(a);nb =

length

(b);

p =[zeros(1

,nb-na) a]+[

zeros(1

,na-nb) b]

;end

java之異常處理機制

class myexception extends exception myexception string msg,int id void method throws myexception public class testexception catch arithmeticexception ...

異常處理機制

異常處理的三個步驟 檢查異常,丟擲異常,處理異常 異常處理基本原理 把需要檢測的程式放到try塊中,把異常處理的程式放在catch塊中。如果執行乙個函式出現了異常,可以丟擲異常資訊。然後查詢try塊下面的catch塊是否可以處理該異常。如果該函式不處理該異常,將傳遞給它的上一級函式 呼叫函式 如果它...

異常處理機制

1 c 中異常處理機制使得異常的引發和異常的處理不必在同乙個函式中。2 異常是專門針對抽象程式設計中的一系列錯誤處理的,c 的函式機制是棧結構,先進後出,依次訪問,無法跳躍。3 異常超脫於函式機制,決定了其對函式的跨越式回跳。4 異常跨越函式 普通用法 基本用法 void add int a,int...