Code:
int main()
{
int i = 1, j = 1, k = 1;
printf("%d ", ++i || ++j && ++k);
printf("%d %d %d ", i, j, k);
return 0;
}
For the first printf statement the output is 1.
The second statement's output is 2 , 1, 1.
I thought the results would have been:
First statement 1.
Second statement 2, 2, 2.
Can someone please explain how this works?