演算子の優先順位

C言語の演算子の優先順位です。

優先順位演算子文法名称結合方向
1 ()x(y)関数呼出し演算子
[]x[y]添字演算子
x . y.演算子(ドット演算子)
->x -> y->演算子(アロー演算子)
++x++後置増分演算子
--y--後置減分演算子
2 ++++x前置増分演算子
----y前置減分演算子
sizeofsizeof xsizeof演算子
&&x単項&演算子(アドレス演算子)
**x単項*演算子(間接演算子)
++x単項+演算子
--x単項-演算子
~~x~演算子(補数演算子)
!!x論理否定演算子
3 ()(x)yキャスト演算子
4 *x * y2項*演算子
/x / y/演算子
%x % y%演算子
5 +x + y2項+演算子
-x - y2項-演算子
6 <<x << y<<演算子
>>x >> y>>演算子
7 <x < y<演算子
<=x <= y<=演算子
>x > y>演算子
>=x >= y>=演算子
8 ==x == y==演算子
!=x != y!=演算子
9 &x & yビット単位のand演算子
10 ^x ^ yビット単位の排他or演算子
11 |x | yビット単位のor演算子
12 &&x && y論理and演算子
13 ||x || y論理or演算子
14 ? :x ? y : z条件演算子
15 =x = y単純代入演算子
+= -= *= /= %= <<= >>= &= ^= |=x += y複合代入演算子
16 ,x , yコンマ演算子

関連情報