ความหมาย
Operator Precedence กำหนดการจัดกลุ่ม terms ในนิพจน์ Associativity กำหนดการจัดกลุ่ม operators precedence เท่ากัน โดยไม่มีวงเล็บ
ตัวอย่าง
x = 7 + 3 * 2; x = 13 (ไม่ใช่ 20) เพราะ * precedence สูงกว่า +
ตาราง Precedence และ Associativity (สูง → ต่ำ)
| Category | Operators | Associativity |
|---|---|---|
| Postfix | () [] -> . ++ -- | Left to right |
| Unary | + - ! ~ ++ -- (type)* & sizeof | Right to left |
| Multiplicative | * / % | Left to right |
| Additive | + - | Left to right |
| Shift | << >> | Left to right |
| Relational | < <= > >= | Left to right |
| Equality | == != | Left to right |
| Bitwise AND | & | Left to right |
| Bitwise XOR | ^ | Left to right |
| Bitwise OR | | | Left to right |
| Logical AND | && | Left to right |
| Logical OR | || | Left to right |
| Conditional | ?: | Right to left |
| Assignment | = += -= *= /= %= >>= <<= &= ^= |= | Right to left |
| Comma | , | Left to right |
หมายเหตุ: เนื้อหานี้ซ้ำกับ ID 1004083476