● ステートメントリファレンス

if 〜 then 、else 、endif

条件分岐を行います。

    if 計算式 then

if と then の間には、結果が真の場合は 0 以外、偽の場合は 0 になる計算式(条件式)を記述します。


if ステートメントは、then 以降の記述により、次の3つの形式に分かれます。



then の直後に else や endif を置く事はできません。置いた場合、STATUS_THEN_SYNTAXERROR が返されます。

エラーになる.

    if 1 then  else 

    if 1 then  endif 

then の後ろを改行すれば、次の行に else や endif を置く事ができます。

    if x then
    else
        処理
    endif

  または、

    if x then : else
        処理
    endif

この場合は、x が偽の時に処理が実行されます。

else と endif の場合も同様です。

    if x then
        処理
    else
    endif

この場合は、x が真の時に処理が実行されます。


処理ブロックの方法は基本的に改行させる必要があるので、一行に繋げて使用する場合は、次のように行毎に記述するステートメント全てをコロンで区切ります(if 〜 endif の間にある改行文字をコロンに置き換える)。

    if 条件 then
:
処理A
:
処理B
:
処理C
:
endif
          

if 条件 then :
    処理A :
    処理B :
    処理C :
endif


    if 条件 then
:
真の場合の処理
:
else
:
偽の場合の処理
:
endif
  

if 条件 then :
    真の場合の処理 :
else :
    偽の場合の処理 :
endif



例外事項



if ステートメントのネスト

if ステートメントは、アプリケーションが決定した限界数まで、入れ子にする事ができます。

    if A then
        if B then
           ・
           ・
           ・
        endif
    else
        if C then
           ・
           ・
           ・
        else
           ・
           ・
           ・
        endif
    endif

if 〜 then のネストは、処理ブロック内の if 〜 then が対象となります。then の後ろに if が連続する記述は、ネストと見なされません。