후배에게 질문받았다. #include void main() { int a = 10; printf("a++, ++a %d %d\n", a++, ++a); a = 10; printf("++a, a++ %d %d\n", ++a, a++);} 이 코드의 결과가 어떻게 출력되느냐 인데 결과는 11 1212 10 이다. C언어는 전통적으로 함수인자를 뒤 인자부터 넣기때문에 코드 실행은 마지막 인자부터 왼쪽으로 실행된다. 이때 후위연산자를 실행하면 ex) a++ 라고 한다면 a 의 값이 상수로 변환되어 인자에 들어가고 a = a+1 이 수행된다. 고로 a=10 이고 a++ 이면 a++ => 10 (이후 a += 1) 이 된다. 신기한 C언어 세상.