最佳答案
if (1) int a = 2;
This line of code is valid C++ code (it compiles at the very least) yet invalid C code (doesn't compile). I know there are differences between the languages but this one was unexpected.
I always thought the grammar was
if (expr) statement
but this would make it valid in both.
My questions are: