Недавно я узнал об операторе ,
и о том, что он вводит точку последовательности.
Я также узнал, что следующий код привел к поведению undefined:
i = ++i;
Потому что i
был дважды изменен между двумя точками последовательности.
Но как насчет следующих кодов?
i = 0, ++i;
i = (0, ++i);
Пока я знаю правила, я не могу прийти к выводу. Так определяется ли это поведение или нет?
edit: Точно так же, как @paxdiablo упоминает, определяется или нет, это действительно плохая практика, которой следует избегать. Этот вопрос задается исключительно для образовательных целей и лучшего понимания "правил".