Специально для Вас:
Between the previous and next sequence point a scalar object shall have its stored value modified at most once by the evaluation of an expression.
Добавлено через 2 минуты
Ну и если еще не совсем поняли, то если
++++++i; //parsed as (++(++(++i)))
UB, тогда

Сообщение от
BloodyWo1f
(--a)--
уж подавно.