HP-BASIC入門
ホーム » HPBASIC入門 » エラー処理

エラー処理


通常、プログラムを作り上げたとしても意図しない動作は 起こりえます。どのようにBASICプログラムがエラーに対処するかを理解し、問題を訂正したり、プログラムに何らかの訂正処置を講じるようなプログラムを作成すると、意図しないエラーを起こしにくいプログラムを作成できます。

エラー応答の概要




エラーに対する処置として選択できるものは、

・エラーの回復しやすくし実行を継続する
・エラーが発生して停止させる


場合があります。 実行時にエラーが発生するとコンピュータは一時的にプログラムの実行を 中断し、エラー番号とエラーが発生した行を示すメッセージを表示します。 その場合は [EDIT]コマンドを入力します。

これを回避するためにはエラーの内容を理解してエラーを未然に 防ぐような処置をする場合とエラーから早期復帰し実行継続 できるようなプログラムにしておく必要があります。


BASICではエラーを回避するためにプログラムに"ON ERROR"文を 記述します。

・"ON ERROR GOSUB" !エラーが発生するとエラー処理関数に移動します
・"ON ERROR GOTO" !関数ではなく任意の処理を行います
・"ON ERROR RECOVER" !エラーが発生するたびに分岐をセットアップします



エラーが起こったら、という処理をするのは同じですが、 どこが悪かったのかを判断し、何が悪かったのかを理解して 回復するという目的は同じです。

下記にエラー処理の例文を示します。

1000 ON ERROR GOTO Rev
1010 IP=0
1020 Part1=-B/2*A
1030 Part2=C/2*A
1040 OFF ERROR





ON ERROR GOSUB Fix_sub
ON ERROR GOTO Fix_sub
ON ERROR RECOVER Fix_sub



ON ERROR GOSUB詳細

エラーが発生したプログラム行に戻る必要のあるときにこの文を使用します。 戻る方法は RETURNでエラーの発生した行にもどすか、ERROR RETURNでエラーの原因となった次の行に戻します。

ON ERROR GOTO 詳細

特に複数のエラー条件のサービスを行おうとする場合など、ON ERROR GOTO文がON ERROR GOSUB文より有効な場合があります。

ERROR RECOVER 詳細

ON ERROR RECOVER文はエラーが発生するたびに指定行に分岐をセットアップします。

プログラムでエラー処理をしたあとで、エラーが発生したことを示す標識をクリアできます。

CLEAR ERROR