MATLAB ファイルでエラーが発​生した際の処理を指定​して実行させることが​できますか?

27 visualizzazioni (ultimi 30 giorni)
MathWorks Support Team
MathWorks Support Team il 25 Ott 2013
MATLAB ファイル内で発生するエラーや警告が発生した際の処理を指定して実行させることができますか?

Risposta accettata

MathWorks Support Team
MathWorks Support Team il 25 Ott 2013
try / catch 構文を利用することで、エラーが発生した際の処理を指定して実行させることができます。
try-catch 間には、実際に実行したい処理内容を記述します。また、catch-end 間には、try-catch 間でエラーが起こった場合に実行したい処理内容を記述しておきます。
また、try/catch 構文では、try-catch 間でエラーが起きても、自動的にはエラーメッセージが出力されないことに注意してください。エラー、ワーニングメッセージを取り出すには、以下のような関数を用います。
lasterror エラーメッセージとエラー識別子の出力
lastwarn ワーニングメッセージの出力
rethrow エラーの再発行
try/catch 構文を利用した MATLA ファイル例は以下になります。
clear all
try
x = 5;
y = x + a;
catch
msg = lasterr
a = 10;
y = x + a;
end
このプログラムは、try-catch 間に、未定義の変数 a があるため、エラーが発生します。しかし、エラーが発生しても、catch-end 間のコマンドが実行されますので、a に値が代入され、プログラムを最後まで実行することができます。
また、lasterr コマンドにより、発生したエラーメッセージが変数 msg として定義され、コマンドウィンドウに表示されるようにしています。

Più risposte (0)

Categorie

Scopri di più su エラー処理 in Help Center e File Exchange

Prodotti


Release

R2009b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!