Scilab Home page | Wiki | Bug tracker | Forge | Mailing list archives | ATOMS | File exchange
Please login or create an account
Change language to: English - Français - Português -

Please note that the recommended version of Scilab is 6.0.1. This page might be outdated.
However, this page did not exist in the previous stable version.

Scilab help >> Scilab > errcatch

errcatch

エラーの捕捉

呼出し手順

errcatch(n [,'action'] [,'option'])
errcatch()

パラメータ

n

整数

action, option

文字列

説明

errcatch は, n型のエラーが発生した時に 実行される "処理" (エラーハンドラ)を指定します, n は以下の意味を有します:

n>0の場合, n は 捕捉するエラー番号となります.

n<0 の場合,全てのエラーが捕捉されます.

action は以下の文字列のどれかとなります:

"pause"

誤差を捕捉した際に pause が実行されます. このオプションはデバッグの際に有用です. カレントのコンテキストで情報を取得するには whereami()を使用してください.

"continue"

関数または実行ファイルないの次の命令が実行され, カレントの命令は無視されます. iserror関数により, エラーが発生したかどうかを調べることが可能です.できるだけ早く errclear関数によりエラーをクリアすることを 忘れないようにしてください. このオプションはエラーからの回復の際に有用です. 多くの場合, execstr 関数または try制御構造を使用することにより errcatch(n,"continue",..)を 置換することができます.

"kill"

デフォルトのモードであり,全ての実行中の関数の実行が破棄され, Scilabの処理はレベル0プロンプトに戻ります.

"stop"

カレントのScilabセッションを中断します(Scilabが外部プログラムからコールされた時に有用).

option は中断時のエラーメッセージである 文字列 'nomessage' です.

デフォルトモードに戻すためには, errcatch(-1,"kill")または errcatch(-1) と入力してください. errcatch() は以前使用されていた errcatch(-1) と 等価です.

errcatchのアクションはカレントの評価コンテキスト (function, exec, pause) およびサブレベル全体に適用されます. あるサブレベル内でerrcatch を2回コールすると このサブレベルでの最初のコールが隠蔽され, 最初の関数コールの効果は削除されます.

Scilab関数または exec のコンテキスト内でコールされた場合, errcatchは,関数のリターンの時に自動的にリセットされます.

参照

  • try — try-catch 制御命令のtryブロックを開始
  • errclear — エラーのクリア
  • iserror — エラー発生の確認
  • whereami — カレントの命令コールツリーを表示
  • execstr — 文字列中のScilabコードを実行

Comments


See comments in other languages: Français: 1 comment(s)

Add a comment:
Please login to comment this page.

<< edit Scilab errclear >>

Scilab Enterprises
Copyright (c) 2011-2017 (Scilab Enterprises)
Copyright (c) 1989-2012 (INRIA)
Copyright (c) 1989-2007 (ENPC)
with contributors
Last updated:
Wed Oct 05 12:12:31 CEST 2011