As per Bruce Eckel
Unary operators ++ -- += have higher precedence over arithmetic
Arithmetic operators go in
* / % + -
now let us take it step by step
Since unary operators has precedence over arithmetic the first to execute will be --b(note a++ will not execute as value of a will be incremented only after the expression is evaluated)
so b = 3
next b*c will be executed which is 3*5 = 15
after that division 15/d = 15/6 = 2.5. Since it is integer it truncates and hence it gets a value of 2
at this point expression is a++ - 2 + e
which is easy to solve. Mind it a will be 3 while calculating and then it will be incremented.
[This message has been edited by Anshul Manisha (edited June 15, 2001).]
[This message has been edited by Anshul Manisha (edited June 15, 2001).]