that is correct, but also confusing.. to put it more plain
1 2 3 4 5 6 7 8
int a, b = 5, c;
// b++ increases b by 1 then returns the old value of b
a = b++; // a = 5, b = 6
// So b++ increased b from 5 to 6, then returned 5 to a
// ++b increases b by 1 then returns the new value of b
c = b++; // c = 7, b = 7
// So ++b increased b from 6 to 7, then returned 7 to c