Výrazy (expressions)

Pořadí vyhodnocení operátorů

Priorita (precedence)

Asociativita

Prioritní tabulka

int a = 10, b = 3, c = 2, d = 4, result

a + a * - b / c % d + c * d
a + a * (- b) / c % d + c * d
a + (((a * (- b)) / c) % d) + c * d
((a + (((a * (- b)) / c) % d)) + (c * d))
              -3
         -30
                    -15
  10                     -3       8
              7                   8        = 15
++x >= y * 2 || y % 2 && z++ % 2

Zkrácené (líné) vyhodnocení (lazy evaluation)

Přetěžování operátorů (operator overloading)

Přiřazovací příkaz (assignment)

Unární přiřazovací příkazy

A[++i] = b; // A[i+1] = b; i += 1;
*(t = p, p += 1, t) = *(t = q, q += 1, t); /* same as *p++ = *q++; */

Vedlejší efekt (side effects)

Iterátory