if / if-else / switch(case 需常數表達式,break 防貫穿);for / while / do-while;break / continue / goto label;(goto 慎用,可跳出多層迴圈)。| 類別 | 運算子 | 結合性 |
|---|---|---|
| 後綴 | () [] -> . ++ -- | 左→右 |
| 一元 | ++ -- + - ! ~ (type) * & sizeof | 右→左 |
| 乘除 | * / % | 左→右 |
| 加減 | + - | 左→右 |
| 位移 | << >> | 左→右 |
| 關係 | < <= > >= | 左→右 |
| 相等 | == != | 左→右 |
| 位元 AND | & | 左→右 |
| 位元 XOR | ^ | 左→右 |
| 位元 OR | | | 左→右 |
| 邏輯 AND | && | 左→右 |
| 邏輯 OR | || | 左→右 |
| 條件 | ? : | 右→左 |
| 賦值 | = += -= *= /= %= &= ^= |= <<= >>= | 右→左 |
| 逗號 | , | 左→右 |
a = b = c = 0 合法(右結合),但 a == b == c 非數學連等;++i 先增後用,i++ 先用後增;單獨語句下效果相同;% 兩側必為整數,負數取模 C99 規定餘數符號同被除數;c = (a=1, b=2, a+b) → 整個表達式值為最後一項。