No. j will be 2 and i will be 3. But:
is problematic. The compiler is allowed to add 1 to i at any time between accessing the value of the variable to use in the expression and starting the next "line" of code. So it must first access the value of i (which is 2); it must then, in some order, assign 2 to i, and add one to i. If it does it in that order, i ends up as 3. If it does it in the opposite order, i ends up as 2.Code:i = 2; i = i++;