728x90
반응형
SMALL
#include <stdio.h>
int main(void){
int a = 5, b = 5;
int pre, post;
pre = (++a) * 3;
post = (a++) * 3;
printf("default a: %d\ndefault b : %d",a,b);
printf("pre : (++a) * 3 -> %d\npost : (a++) * 3 -> %d",pre,post);
return 0;
}
코드 설명
1. main() 함수
1-1. 정수형 변수 a와 b를 선언하고, 둘 다 5의 값을 할당
1-2. 정수형 변수 pre와 post를 선언
1-3. pre에 전위 증가 연산자를 적용한 a의 값을 3과 곱한 결과를 할당. a의 값이 먼저 1 증가하므로 6이 되고, 이후 6 * 3 연산을 수행하여 pre는 18이 됨
1-4. post에 후위 증가 연산자를 적용한 a의 값을 3과 곱한 결과를 할당. a의 현재 값(6)으로 곱셈 연산이 먼저 수행되고, 연산 후 a의 값이 1 증가하여 7이 됨. 따라서 post는 18이 됨
1-5. printf()문을 사용하여 기본 a와 b의 값, 그리고 pre와 post의 연산 결과를 출력. 단, 출력 형식에 오류가 있어 "default a: %d\ndefault b : %d"와 "pre : (++a) * 3 -> %d\npost : (a++) * 3 -> %d" 사이에 출력 구분을 위한 개행 문자(\n)가 필요함
1-6. 실제 출력될 때, a의 최종 값은 7, b는 변하지 않고 5로 유지됨. pre 연산 결과는 18, post 연산 결과도 18이지만, 연산 순서가 다름에 주의
2. 반환문 (return) 작성 -> 프로그램이 성공적으로 실행되었음을 나타내기 위해 0을 반환
728x90
반응형
LIST
'개념 > 혼자 공부하는 C언어' 카테고리의 다른 글
chapter 4) 콤마 연산자 (0) | 2024.06.24 |
---|---|
chapter 4) 형 변환 연산자가 필요한 경우 (0) | 2024.06.23 |
chapter 4) 연산자 우선순위의 연산 방향 (0) | 2024.06.21 |
chapter 4) 복합 대입 연산자 (0) | 2024.06.20 |
chapter 4) 연산의 결과값을 사용하는 방법 (0) | 2024.06.19 |