# C언어 증감 연산자(전위, 후위) 아래 코드 연산 결과 과정을 알려주세요(네이버 지식iN 펌) ``` #include <stdio.h> void main() { int x = 5, a, b; a = ++x * x--; b = x * 10; printf("a=%d b=%d x=%d", a, b, x); } ```
## 연산 과정 ### 1. 변수 초기화 먼저 변수가 초기화 됩니다. (`a`와 `b`의 경우 0으로 초기화) ``` // x: 5 // a: 0 // b: 0 int x = 5, a, b; ``` ### 2. a 값 변경 전위 및 후위 증가 연산자가 계산됩니다. (컴파일러에 따라 a의 결과 값이 다를 수 있음) ``` // ++x: 수행 전 증가(5 -> 6) // x--: 수행 후 감소( 6 -> 5) a = ++x * x--; // 6 * 6 ``` ### 3. b 값 변경 ``` b = x * 10; // 5 * 10 ``` ### 4. 결과 출력 ``` // a: 36 // b: 50 // x: 5 printf("a=%d b=%d x=%d", a, b, x); ```
## 후위 감소 연산자 후위 감소 연산자는 현재 라인이 종료 된 후에 반영됩니다. 아래 코드를 직접 실행해보세요. ``` int x = 10; printf("x = %d\n", x--); // x = 10; printf("x = %d\n", x); // x = 9 ```