Whatever result you see is undefined because you are using modifiers more than once on the same variable in the same statement.
For prefix increment: Code: int a=10; printf( "%d" , ++a); The output will be 11. I am sure you understand it why? For postfix increment: Code: int a=10; printf( "%d" , a++); The output will be 10. It is because, the value of a is returned first then only it is increased by 1. Here is another example: Code: int a=10, b; printf( "%d" , a++); // 10 is displayed ++a; // a becomes 12 after this statement In you example, it doesn't matter if you use prefix or postfix increment but there are cases when, prefix and postfix increment gives different result.