式と演算子

2021/05/18 05:52 Macro::macro 仕様

式と演算子

if 等で扱う条件式は、以下の仕様となっています。

式の表現

式は、定数・変数・演算子・カッコで表現します。

式で扱う定数と変数は、整数型のみです。
結果も整数型になります。

関係演算子を用いた式の結果の値は、以下の通りです。
式の結果値の意味
0
1

演算子の優先順位による分類

優先順位演算子バージョン種類
1
(最高)
notビット否定演算子*1"~" はバージョン 4.53 以降で利用可
~(4.53 以降)
!(4.53 以降)論理否定演算子バージョン 4.53 以降で利用可
+正の単項演算子
-負の単項演算子
2*乗算演算子
/除算演算子
%余剰演算子A % B の値は A / B の余り
3+加算演算子
-減算演算子
4>>(4.54 以降)算術ビットシフト演算子バージョン 4.54 以降で利用可
<<
>>>(4.54 以降)論理ビットシフト演算子バージョン 4.54 以降で利用可
5andビット毎論理積演算子*1"&" はバージョン 4.53 以降で利用可
&(4.53 以降)
6xorビット毎排他的論理和演算子*1"^" はバージョン 4.53 以降で利用可
^(4.53 以降)
7orビット毎論理和演算子*1"|" はバージョン 4.53 以降で利用可
|(4.53 以降)
8<関係演算子
>
<=
>=
9=関係演算子"==" と "!=" はバージョン 4.54 以降で利用可
==(4.54 以降)
<>
!=(4.54 以降)
10&&(4.53 以降)論理積演算子バージョン 4.53 以降で利用可
11
(最低)
||(4.53 以降)論理和演算子バージョン 4.53 以降で利用可

*1 and, or, xor, not はビット演算子です。(論理演算子ではありません)

例:
    1 + 1
    4 - 2 * 3      この式の値は-2
    15 % 10        この式の値は5
    3 * (A + 2)    A は整数型の変数
    A and not B
    A <= B         A, B は整数型の変数。
                   結果の値は真のとき1、偽のとき0