Slava S
Не сразу понял, но думаю что работает след. Образом
Итак сначала идёт присвоение. Присвоение идёт по значению, значит переменная которая в стеке получает ноль, но ещё компилятор видимо создаёт копию, тоже на стеке, инкрементит ее и дальше с ней ничего не происходит
В том то и прикол. Я готов принять, что так происходит при первом ходе цикла.
А при втором заходе, разве при инкрементировании нового значения переменной i не должна использоваться эта самая временная переменная?