C언어에서는 데이터를 계산하거나 비교할 때 연산자(operator)
를 사용한다. 수학처럼 보이지만, 연산자의 종류와 동작 방식은 프로그래밍에 맞게 다듬어져 있다. 자주 쓰이는 것들 위주로 간단히 정리해보자.
정수끼리 나누면 소수점은 버려지고 몫만 반환된다. 10 / 3은 3이지 3.33이 아니다.
연산자 | 의미 | 예시 | 결과 |
---|---|---|---|
+ | 덧셈 | 3 + 2 | 5 |
- | 뺄셈 | 5 - 1 | 4 |
* | 곱셈 | 4 * 2 | 8 |
/ | 나눗셈 | 10 / 3 | 3 (정수) |
% | 나머지 | 10 % 3 | 1 |
두 값을 비교하고 참이면 1
, 거짓이면 0
을 반환한다.
연산자 | 의미 | 예시 | 결과 |
---|---|---|---|
== | 같다 | a == b | 1 또는 0 |
!= | 다르다 | a != b | 1 또는 0 |
> | 크다 | a > b | 1 또는 0 |
< | 작다 | a < b | 1 또는 0 |
>= | 크거나 같다 | a >= b | 1 또는 0 |
<= | 작거나 같다 | a <= b | 1 또는 0 |
여러 조건을 논리적으로 조합할 때 사용합니다. 조건에 따라 분기를 만드는 if
문에서 자주 쓰입니다.
연산자 | 의미 | 예시 | 설명 |
---|---|---|---|
&& | AND (그리고) | a > 0 && a < 10 | 둘 다 참일 때 전체 참 |
OR (또는) | a < 0 | a > 100 | 하나라도 참이면 전체 참 |
! | NOT (부정) | !(a == b) | 참/거짓을 반대로 뒤집음 |
값을 변수에 넣을 때 사용한다.
a = 5; // =은 오른쪽 값을 왼쪽 변수에 대입
a += 2; // a = a + 2;
a -= 1; // a = a - 1;
a *= 3; // a = a * 3;
a /= 2; // a = a / 2;
a %= 4; // a = a % 4;
a++
는 값을 먼저 사용한 후 증가
++a
는 값을 증가시킨 후 사용
int a = 3;
printf("%d", a++); // 출력: 3
printf("%d", ++a); // 출력: 5
하나하나 기억하기보단 명확히 ()를 써서, 사람들의 혼란을 줄이는 것이 중요하다.
@nullvuild