式について
式とは、関数、変数、定数、およびそれらを演算子や括弧(()[])で結んだもの、のいずれかです。式を一般形で表現すると以下のようになります。
式:変数(単純変数/配列変数/システム変数)
式:定数(10進定数/16進定数/マクロ定数/文字列定数)
式:関数(システム関数)
式:単項演算子→式
式:式→2項演算子→式
式:(→式→)
例1. @12
例2. 0x834b
例3. insstr(0x0d0a)
例4. ~DSTAT_UNDERLINE
例5. @5+@str1[3]
例6. (@5+@7)*8
例7. @code=@5-0x37
例8. @3 = @str2[@4=@2-0x8340]
例9. if (@2=@code-0x20)<=64 then insstr(@2+0x20)
例10. while 1
・
・
wend
MIL/W言語ではC言語と同様に、変数、定数、関数、式は全く同等に扱われます。変数や定数がその値を持ち、関数が関数値を持つのと同様に、すべての式はその演算結果としての値を持ちます。この式の値が
0 の時、その条件式は偽でありと見なし、0 以外の値の時、その条件式は真であると見なします。通常の式と条件式の違いは、if や while
の直後にある式を条件式と呼ぶだけであり、基本は同じものです。
また、例7や例8のような代入文も式のひとつです。これは、=
も通常の演算子と同様に扱われることを意味します。演算子 =
は、右辺の式の値を左辺の変数に代入し、演算結果として左辺の変数の値を返す演算子です。 変数、定数、関数、式は全く同等ですから、演算子を持たない変数や定数だけの式もあります(例1、例2)。特に定数
1 だけの条件式は、常に真となる条件式と見なすことができます(例10)。
リンク
|