C++ Book


Appendix B - Operator Precedence

C++ Operator Precedence

Precedence Level Operator Description
17 :: Scope resolution
16 -> Indirect member selection
16 . Member selection
16 [ ] Array index
16 ( ) Function call
16 ( ) Type construction
16 sizeof Size in bytes
15 ++ Increment
15 Decrement
15 ~ Bitwise NOT
15 ! Logical NOT
15 + Unary plus
15 - Unary minus
15 * Dereference
15 & Address-of
15 ( ) Cast
15 new Acquire memory on the heap
15 delete Release memory on the heap
14 ->* Indirect member pointer selector
14 .* Member pointer selector
13 * Multiplication
13 / Division
13 % Modulus
12 + Addition
12 - Subtraction
11 « Bitwise shift left
11 » Bitwise shift right
10 < Less than
10 <= Less than or equal to
10 > Greater than
10 >= Greater than or equal to
9 == Equal to
9 != Not equal to
8 & Bitwise AND
7 ^ Bitwise XOR
6 | Bitwise OR
5 && Logical AND
4 || Logical OR
3 ?: Conditional operator
2 = Assignment
2 *= Multiply and assign
2 /= Divide and assign
2 %= Modulus and assign
2 += Add and assign
2 -= Subtract and assign
2 «= Bitwise shift left and assign
2 »= Bitwise shift right and assign
2 &= Bitwise AND and assign
2 |= Bitwise OR and assign
2 ^= Bitwise XOR and assign
1 , Comma operator