Rational Developer for System z
Enterprise PL/I for z/OS, Version 3.8, 言語解説書

次の例で、EE1 などは式を表します。 SELECT ステートメントに制御が到達すると、 式 E が計算され、その値が保管されます。 次に、WHEN ステートメント内のそれぞれの式が 順に (書かれている順に) 計算され、その値が E の値と比較されます。

E の値と等しい値が見付かると、 対応する THEN ステートメントの後に指定されている処置が行われます。 先の WHEN ステートメント式は計算されません。

WHEN ステートメントのどの式も、SELECT ステートメントの式と等しくない場合は、 OTHERWISE ステートメントの後に指定されている処置が実行されます。

  select (E);
    when (E1,E2,E3) action-1;
    when (E4,E5) action-2;
    otherwise action-n;
  end;
  Nl: next statement;

exp1 を省略した場合の例を以下に示します。

  select;
    when (A>B) call Bigger;
    when (A=B) call Same;
    otherwise call Smaller;
  end;

SELECT グループ内に WHEN ステートメントが 1 つもない場合は、 OTHERWISE ステートメント内の処置が無条件に実行されます。 OTHERWISE ステートメントを省略した場合に、 SELECT グループが実行され、WHEN ステートメントの どのユニットも選択されなかったときは、ERROR 条件が起こります。


Terms of use | Feedback

This information center is powered by Eclipse technology. (http://www.eclipse.org)