0
#include <stdio.h>

void main(void)
{
    int a = 1;
    printf("%d, %d\n", a++, a);
    a = 1;
    printf("%d, %d\n", (a++), a);
    a = 1;
    printf("%d, %d\n", ++a, a);
}

I wonder Why is this result

1, 2
1, 2
2, 2

rather than

1, 2
2, 2
2, 2

By the way, I use visual studio 2013 to build this.

Spikatrix
  • 20,225
  • 7
  • 37
  • 83

0 Answers0