Possible Duplicate:
Could anyone explain these undefined behaviors (i = i++ + ++i , i = i++, etc…)
int main()
{
int a,b=3;
a=(b++)*(b++)*(b++);
printf("%d %d",a,b);
}
a
becomes 27 but b
is 6 after the execution of the expression. Can anyone tell me how the
expression is executed?