i run the following programme under vc, gcc and tc:
#define CUBIC(x) ((x) * (x) * (x))
int x = 5;
int y = CUBIC(++x);
and get the results separately as follow:
y=392 under vc and gcc
y=512 under tc
if y = CUBIC(x++), i get 125 under all the above compilers. why? i had thought the result will be depend on compiler and will be different.