前頁  メニュー  次頁


EXTYPE関数

EXTYPE

例外状態の種別番号。詳細はJISに定義されている。

  WHEN EXCEPTION IN構文のUSE区で用いて,
  特定の例外にのみ対処するプログラムを書きたいときなどに用いる。
<備考> EXTYPEは予約語。

 EXTYPEの概要
1000番台 あふれ(数値の桁あふれなど)
2000番台 
  2001 配列添字が範囲外
3000番台 算術計算の誤り(正しくない算術演算)
4000番台 実引数が正しくないか,範囲外
5000番台 配列の大きさ不足
6000番台 配列利用の誤り
7000番台 ファイル利用の誤り
8000番台 入出力の誤り
  8001 READ文におけるデータ不足
  8011 入力におけるファイルの終わり
  8012 記録中のデータ個数の不足
  8013 記録中のデータ個数の余剰
  8101 ファイルから数値変数へ数値以外の入力
  8105 ファイルからの構文的に正しくない入力
  8120 内部形式記録の入力における型の不一致
  8201 書式文字列が正しくない
  8202 対応する書式項目がない
  8203 出力文字列が書式より長い(続行可能例外)
  8204 指数部が書式の指数部より長い(続行可能例外)
    8401 input文における時間切れ
  8402 timeout区の時間式の値が負
9000番台 装置における処理系定義の誤り
10000番台 制御の誤り
  10004 CASE ELSEを省いたSELECT構文で対応するCASEがない
    10005 CHAIN文の対象プログラムが利用できない
11000番台 グラフィックス利用の誤り

○ 処理系定義の例外番号として次の値を使用する。
   -3009  図形変換中の無効演算
   -1005  図形変換中の桁あふれ
    -103  配列用のメモリ確保ができない
    -102  変数用のメモリが確保できない
    -101  スタックがあふれた
    -100  プログラム実行用のメモリが確保できない 
    7101  ファイルをopenできない(ファイルの指定が正しくない?)
    7102  ファイルをopenできない(存在しない?)
    7103  ファイルを作れない(ファイル個数の限度を越える?)
    9003  ファイル削除に失敗した


例外状態の伝達
 例外が手続きの外に伝達されると,extype関数の値は,当初の値に100000を加えた値になる。ただし,負数のextypeの場合は100000を引いた値になる。
<参考>伝達前の値は,REMAINDER(EXTYPE,100000)で求まる。