演算子備忘録

演算子の優先順位、結合規則を以下の表にまとめる。

※a,bは、ここでは変数名として扱う。

まだ編集中なので抜けていたり今後加筆されていきます。


順位 記号 演算子名

演算子総称名(備考)

結合

規則

書式例

 1 ()  関数呼び出し (関数)
function(a)
[] 配列添字 (配列)
array[5]
. メンバアクセス (構造体) オブジェクト名.メンバ名
-> メンバ間接アクセス (構造体) ポインタ名->メンバ名
++ 後置インクリメント 単項、(演算) a++
-- 後置デクリメント 単項、(演算) a--
2 ! 論理否定 単項論理 !a
~ ビット補数 単項(ビット操作) ~a
+ 単項プラス 単項(演算)
+a
- 単項マイナス 単項(演算)
-a
++ 前置インクリメント 単項、(演算) ++a
-- 前置インクリメント 単項、(演算) --a
& アドレス 単項(ポインタ) &a
* 間接参照 単項(ポインタ) *a
3 () キャスト

(変数型変換)

(int)a
4 * 乗算 二項、(演算) a*b
/ 除算 二項、(演算) a/b
% 剰余 二項、(演算) a%b
5 + 加算 二項、(演算) a+b
- 減算 二項、(演算) a-b
6 << 左シフト 二項、(ビット操作)
110<<1
>> 右シフト 二項(ビット操作) 110>>1
7 > 大なり 関係 a<5
>= 以上 関係
a>=5
< 未満 関係
a<5
<= 以下 関係
a<=5
8 == 等価 関係
a==5
!= 非等価 関係
a!=5
9
& AND(ビット論理積) 二項(ビット操作) 1&1
10 ^ XOR(ビット排他的論理和) 二項(ビット操作) 1^1
11 | OR(ビット論理和) 二項(ビット操作) 1|1
12 && AND(論理積) 論理 a>0&&a<=5
13 || OR(論理和) 論理 a<0||a>=5
14 ?: 条件 三項条件

(条件式)?(真の場合の処理)

(偽の場合の処理)

a<5?a=0:a=10 

15 = 代入 代入
a=5
+= 加算代入 複合代入 a+=5
-= 減算代入 複合代入
a-=5
*= 乗算代入 複合代入
a*=5
/= 除算代入 複合代入
a/=5
%= 剰余代入 複合代入
a%=5