Как интерпретировать эти операторы pre increment?
Операторы предварительного приращения имеют право налево ассоциативность, поэтому правая часть больше i
будет увеличиваться или все значения i
будут увеличиваться один раз?Вывод следующей программы
main()
{
int i=3,j;
j=++i*++i*++i;
printf("%d",j);
}
Ответ 216.
№ В этом вопросе n o оператор присваивания имеет тот же оператор. У него есть один до и один пост. Исправьте меня, если я ошибаюсь. – user2531733
Этот вопрос является дубликатом со вторым вопросом, точками последовательности. Не имеет значения, является ли он одним и тем же оператором или нет, поведение по-прежнему недокументировано и, следовательно, не определено. Нет ничего нового, чтобы учиться на этом вопросе, за исключением случаев, когда вы можете внести в вопрос какую-то новую информацию. Правильный ответ заключается в том, что он не документирует, как все оператор '++' будет выполняться и в каком порядке. Хотя порядок между «++» здесь не имеет значения, порядок с остальной частью выражения, но это, к сожалению, не определено. –