카테고리 없음
[C/C++] 연산자 총정리
security21
2026. 3. 20. 16:34
※C언어에서 연산자는 프로그램의 핵심이다.
데이터를 계산하고, 비교하고, 조건을 판단하는 모든 과정이 연산자를 통해 이루어진다.
1. 산술 연산자 (Arithmetic Operator)
기본적인 사칙연산을 수행하는 연산자
| 연산자 | 설명 | 예시 |
| + | 덧셈 | a+b |
| - | 뺄셈 | a-b |
| * | 곱셈 | a*b |
| / | 나눗셈 | a/b |
| % | 나머지 | a%b |
※ 주의사항
- 정수끼리 나누면 소수점은 버려진다
- % 연산자는 정수형에서만 사용 가능
2. 증감 연산자 (Increment / Decrement)
변수의 값을 1 증가 또는 감소시키는 연산자
| 연산자 | 설명 |
| ++ | 1 증가 |
| -- | 1 감소 |
※ 전위 / 후위 차이
int a = 5;
++a; // 먼저 증가 → 6
a++; // 사용 후 증가
3. 관계 연산자 (Relational Operator)
값을 비교하여 참(1) 또는 거짓(0) 을 반환
| 연산자 | 설명 |
| == | 같다 |
| != | 다르다 |
| > | 크다 |
| < | 작다 |
| >= | 크거나 같다 |
| <= | 작거나 같다 |
4. 논리 연산자 (Logical Operator)
조건을 조합할 때 사용
| 연산자 | 설명 |
| && | AND (둘 다 참) |
| || | OR (하나라도 참) |
| ! | NOT (반대) |
※특징
- 단축 평가(Short-circuit) 발생
-> 앞 조건으로 결과가 결정되면 뒤는 실행되지 않음
5. 비트 연산자 (Bitwise Operator)
데이터를 비트 단위로 연산
| 연산자 | 설명 |
| & | AND |
| | | OR |
| ^ | XOR |
| ~ | NOT |
| << | 왼쪽 시프트 |
| >> | 오른쪽 시프트 |
6. 대입 연산자 (Assignment Operator)
값을 저장하거나 계산 결과를 변수에 반영
| 연산자 | 설명 |
| = | 대입 |
| += | 더해서 대입 |
| -= | 빼서 대입 |
| *= | 곱해서 대입 |
| /= | 나눠서 대입 |
| %= | 나머지 대입 |
7. 조건(삼항) 연산자
조건에 따라 값을 선택할 때 사용
조건 ? 참 : 거짓;
int max = (a > b) ? a : b;
8. 기타 중요한 연산자
- sizeof
자료형 또는 변수의 크기 반환
sizeof(int);
- 주소 연산자 & / 포인터 *
포인터에서 사용
| 연산자 | 설명 |
| & | 주소 반환 |
| * | 해당 주소의 값 접근 |
- 콤마 연산자 (,)
여러 연산을 순차적으로 실행
a = (b = 3, b + 2); // 결과: 5
9. 연산자 우선순위 (핵심 요약)
우선순위는 다음과 같다
| 1 | () |
| 2 | 단항 연산자 (++, --, ! 등) |
| 3 | *, /, % |
| 4 | +, - |
| 5 | <<. >> |
| 6 | 비교 연산 (<, > 등) |
| 7 | ==, != |
| 8 | && |
| 9 | || |
| 10 | 대입 (=, += 등) |