演算子の優先順位
C言語の演算子の優先順位です。
| 優先順位 | 演算子 | 文法 | 名称 | 結合方向 |
|---|---|---|---|---|
| 1 | () | x(y) | 関数呼出し演算子 | 左 |
| [] | x[y] | 添字演算子 | 左 | |
| . | x . y | .演算子(ドット演算子) | 左 | |
| -> | x -> y | ->演算子(アロー演算子) | 左 | |
| ++ | x++ | 後置増分演算子 | 左 | |
| -- | y-- | 後置減分演算子 | 左 | |
| 2 | ++ | ++x | 前置増分演算子 | 右 |
| -- | --y | 前置減分演算子 | 右 | |
| sizeof | sizeof x | sizeof演算子 | 右 | |
| & | &x | 単項&演算子(アドレス演算子) | 右 | |
| * | *x | 単項*演算子(間接演算子) | 右 | |
| + | +x | 単項+演算子 | 右 | |
| - | -x | 単項-演算子 | 右 | |
| ~ | ~x | ~演算子(補数演算子) | 右 | |
| ! | !x | 論理否定演算子 | 右 | |
| 3 | () | (x)y | キャスト演算子 | 右 |
| 4 | * | x * y | 2項*演算子 | 左 |
| / | x / y | /演算子 | 左 | |
| % | x % y | %演算子 | 左 | |
| 5 | + | x + y | 2項+演算子 | 左 |
| - | x - y | 2項-演算子 | 左 | |
| 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 | コンマ演算子 | 左 |
C言語ゼミ


