Во-первых, вы не должны писать такой код ....
Но если мы рассмотрим ради вопросов, то это просто: это связано с тем, как постфиксный оператор «возвращает» значение. Постфикс имеет приоритет над оператором присваивания, но оператор постфикса после увеличения значения i возвращает предыдущее значение i. Так что мне снова присваивают его предыдущее значение.
И снова не используйте эту конструкцию в своем коде, поскольку следующий программист, который увидит, что он придет за вами (с чем-то большим в его руках):)