What happens (behind the curtains) when this is executed?
int x = 7;
x = x++;
That is, when a variable is post incremented and assigned to itself in one statement? I compiled and executed this. x
is still 7 even after the entire statement. In my book, it says that x
is incremented!
x
does get incremented. But you are assigning the old value of x
back into itself.
x = x++;
x++
increments x
and returns its old value.x =
assigns the old value back to itself.So in the end, x
gets assigned back to its initial value.