I counted the output as 35. But correct out put 33. Please help to understand.
This is how i counted.
++x uses incremented value. So first ++x = 11
next ++x increment x again. so second ++x = 12 next x++ uses the current value in the memory. so uses 12. 11 + 12 + 12 = 35
There is no "next ++x" (ie. second pre-increment). There is a space between the two plus signs. It is not a pre-increment, it is two unary plus operators. So, the correct expressions with precedence (and associativity) applied should be...