|
This question is only related to the grammar rules of the C language, and has nothing to do with how to implement it!
No matter what c compiler, the result is the same. Otherwise it cannot be called "language"
For: suppose i = 2
printf ("% d,% d", i, i ++); // This case is displayed as: 3,2
printf ("% d,% d", i, ++ i); // This case is displayed as: 3,3
printf ("% d,% d", i ++, i); // This case is displayed as: 2,3
printf ("% d,% d", ++ i, i); // This case is displayed as: 3,3
The results of the first and second sentences are abnormal. It is estimated that you read the wrong result!
printf ("% d,% d", i, i ++); // should show as: 2,2
printf ("% d,% d", i, ++ i); // should show as: 2,3
If it is not that you read it wrong, then you have a problem with the c compiler, please give up
Although C is very flexible, it is not flexible enough to change even the grammar rules!
It is really admirable for the "five bodies to cast their grounds" that the "experts" above have to explain "wrong". |
|