Возможный дубликат:
Может ли кто-нибудь объяснить это неопределенное поведение (i = i ++ + ++ i, i = i ++ и т.д.)
увеличивать значения в printf
У меня есть два двойных массива x
и y
и целое число i
. У меня вопрос, есть ли утверждение:
double res = x[i] * y[i++];
всегда равно заявлению:
double res = x[i] * y[i];
i++;
Возможно ли, что некоторые компиляторы превратят x[i] * y[i++]
в y[i++] * x[i]
, что, очевидно, даст другой результат?
x[i] - y[i++]
(которую нельзя отменить), поведениеi
в этой ситуации все равно будет неопределенным. 05.12.2012