본문 바로가기
프로그래밍/C

[C언어] 증감 연산자 ++ -- 전위 후위 연산자

by 아임코딩 2024. 1. 26.
728x90
반응형

안녕하세요 아임코딩입니다.

이번에는 C언어에서 제공하는 증감 연산자에 대해서 알아보도록 하겠습니다.

 

 

증감 연산자란?

증감 연산자는 증가 또는 감소 연산자를 뜻합니다.

어떤 숫자형 변수의 값을 1 증가 또는 1 감소를 하는 연산자 입니다.

 

증가 연산자 : ++

감소 연산자 : --

 

전위 증가 연산자 : ++변수

후위 증가 연산자 : 변수++

 

전위 감소 연산자 : --변수

후위 감소 연산자 : --변수

 

전위와 후위 연산자에 대한 차이점은 아래 글에서 다루도록 하겠습니다.

 

 

전위 증가 연산자 ++

전위 증가 연산자의 위치는 변수 앞에 위치합니다.

++변수 이런 형태로 코드를 작성합니다.

#include <stdio.h>

int main() {

	int a = 1;
	++a;	//a = a + 1
	printf("%d", a);
}

 

 

 

후위 증가 연산자 ++

후위 증가 연산자의 위치는 변수 앞에 위치합니다.

변수++ 이런 형태로 코드를 작성합니다.

#include <stdio.h>

int main() {

	int a = 1;
	a++;	//a = a + 1
	printf("%d", a);
}

 

 

 

전위 감소 연산자 --

전위 감소 연산자의 위치는 변수 앞에 위치합니다.

--변수 이런 형태로 코드를 작성합니다.

#include <stdio.h>

int main() {

	int a = 1;
	--a;	//a = a - 1
	printf("%d", a);
}

 

 

후위 감소 연산자 --

후위 감소 연산자의 위치는 변수 앞에 위치합니다.

변수-- 이런 형태로 코드를 작성합니다.

#include <stdio.h>

int main() {

	int a = 1;
	a--;	//a = a - 1
	printf("%d", a);
}

 

 

 

 

전위 연산자 vs 후위 연산자

전위 연산자와 후위 연산자의 차이를 알아보도록 하겠습니다.

이 둘의 차이점은 코드 실행 순서에 있는데요,

전위 연산자는 같은 줄에 있는 코드들 중 먼저 실행이 됩니다.

후위 연산자는 같은 줄에 있는 다른 코드들이 실행된 후 실행이 됩니다.

 

구체적인 내용은 코드를 통해서 알아보도록 하겠습니다.

 

#include <stdio.h>

int main() {

	int a = 1;
	
	printf("%d\n", a++);	//printf(), a = a + 1
	printf("%d",a);

}

 

printf("%d\n", a++); 코드를 확인해보면 printf() 함수와 증가 연산자가 한 줄에 동시에 있기 때문에

어떤 코드가 먼저 실행될지 헷갈립니다.

코드 실행 결과

a++ 후위 연산자이기 때문에 printf()가 먼저 실행된 후 a의 값이 증가한 것을 확인할 수 있습니다.

이처럼 후위 연산자는 같은 줄에 있는 다른 코드들이 먼저 실행이 되고 a의 값이 증가합니다.

 

 

반대로 전위 연산자의 경우에는 같은 줄에 있는 다른 코드들보다 전위 연산자가 먼저 실행이 됩니다.

#include <stdio.h>

int main() {

	int a = 1;
	
	printf("%d\n", ++a);	//a = a + 1, printf()
	printf("%d",a);

}

코드 실행 화면

 

이렇게 전위 연산자와 후위 연산자의 차이점까지 알아봤습니다.

728x90
반응형