I just compiled the program below in Cyqwin and on codepad
int main()
{
int k=1;
printf("%d, %d, %d\n", k, k++, k++);
}
In both cases the output was
3, 2, 1
Shouldn't it be the other way around?
Any thoughts would be welcome.
I just compiled the program below in Cyqwin and on codepad
int main()
{
int k=1;
printf("%d, %d, %d\n", k, k++, k++);
}
In both cases the output was
3, 2, 1
Shouldn't it be the other way around?
Any thoughts would be welcome.
Read my answer here -> Comma Operator - C And C++ | Dream.In.Code
Then understand that the code has undefined behaviour.
If you dance barefoot on the broken glass of undefined behaviour, you've got to expect the occasional cut.
If at first you don't succeed, try writing your phone number on the exam paper.