Hello list,
Yestoday I encounter this problem during a test:
1 int x = 11;
2 std::cout<< x << x-- << ++x;
I think it should be :
11 11 11
----
I wrote the fellowing code :
#include <iostream>
int main() {
int x = 11;
std::cout<< x << x-- << ++x << std::endl;
}
compile the code above with g++ 4.5.0, after run, it gives:
11 12 11
----
#include <stdio.h>
int main() {
int x = 11;
printf("%d %d %d\n", x, x--, ++x);
}
the c code compiled with gcc gives the same result.
----
But when I use clang and clang++ to compile the codes above, I get:
11 11 11.
I am not familar with both c++ and compiler implementation, donot konw
why the results are differnt for gcc and clang. Anyone could help and
explain this difference for me?
Thanks,
Ryan Ren