관우는 왜 C 언어를 살육했나? [2-2] 비교 연산자 & 논리 연산자
by
[2-2] 비교 연산자 & 논리 연산자
비교 연산자와 논리 연산자에 대해 알아보겠습니다.
비교 연산자
비교 연산은 두 값의 크기를 비교합니다. 논리 연산자는 비교한 결과가 참이면 1, 거짓이면 0를 반환합니다. 크게 등호 연산자, 부정 연산자, 관계 연산자로 볼 수 있습니다. 이 셋 중 관계 연산자의 연산 우선순위가 가장 높습니다. 등호 연산자와 부정 연산자의 우선순위는 같습니다.
구분 | 연산자 이름 | 연산자 | 구문 | |
등호 연산자 | 같음 | == | a == b | |
부정 연산자 | 같지 않음 | != | a != b | |
관계 연산자 | 큼 | > | a > b | |
작음 | < | a < b | ||
크거나 같음 | >= | a >= b | ||
작거나 같음 | <= | a <= b |
#include <stdio.h>
int main(void) {
int a = 1;
int b = 2;
printf("a == b : %d\n", a == b);
printf("a != b : %d\n", a != b);
printf("a > b : %d\n", a > b);
printf("a < b : %d\n", a < b);
printf("a >= b : %d\n", a >= b);
printf("a <= b : %d\n", a <= b);
return 0;
}
[출력]
a == b : 0
a != b : 1
a > b : 0
a < b : 1
a >= b : 0
a <= b : 1
=!, =>, =< 처럼 잘못 표기하는 경우가 있습니다. ‘안 같다’, ‘크기 않다’, ‘작지 않다’처럼 외워서 말한 순서대로 쓰면 헷갈릴 일이 없습니다.
논리 연산자
논리 연산은 참과 거짓 두 가지 원고만 있는 집합의 연산입니다. 논리 연산자로는 AND, OR, NOT 이 있습니다.
연산자 이름 | 영문 표현 | 연산자 | 구문 | |
부정(NOT) | 참이면 거짓, 거짓이면 참 | ! | !a | |
논리곱(AND) | 두 값이 참이어야 참 | && | a && b | |
논리합(OR) | 둘 중 하나라도 참이면 참 | || | a || |
#include <stdio.h>
int main(void) {
int a = 1;
int b = 0;
printf("a = %d, !a = %d\n", a, !a);
printf("b = %d, !b = %d\n", b, !b);
printf("a && b = %d\n", a && b);
printf("a || b = %d\n", a || b);
return 0;
}
[출력]
a = 1, !a = 0
b = 0, !b = 1
a && b = 0
a || b = 1
&&를 &로, | 를 | 로 쓰는 실수를 수없이 하게 될 겁니다. &와 | 은 비트 연산에 사용하는 비트 연산자입니다. |
殺 |
Subscribe via RSS