CS/정보처리산업기사
프로그래밍 언어의 개요 - 연산자
jjh0119
2025. 3. 21. 17:11
01. 연산자와 우선순위
- 자료에 대한 연산동작을 지정한 기호
- 연산자 우선순위란 두 종류 이상의 연산자가 수식내에 포함될 경우 연산의 순서를 의미한다.
- 연산자 결합방향이란 우선 순위가 동일한 연산자들이 수식 내에 포함될 경우 어느방향으로 결합하는가를 결정하는 것이다.
02. 이항 연산자의 우선 순위
- 연산자의 대부분은 피연산자를 2개 가지느 이항 연산자에 속한다.
- 이항 연산자의 우선순위는 '산술연산자 -> 관계연산자 -> 논리연산자' 순으로 우선순위가 높다. 즉 괄호가 있지 않으면 우선순위가 높은 연산자부터 처리가 된다.
03. 산술 연산자
- 정수 산술 연산자는 정수의 결과값을, 실수 산술 연산은 실수의 결과값을 갖는다.
- 부호를 나타내는 단항 연산자 '+', '-'는 이항 산술 연산자보다 우선수위가 높다.
- 이상 연산자 '+', '-' 는 '*', '/', '%'보다 우선 순위가 낮다.
- % 연산자는 정수 나눗셈 후 나머지 값을 구한다.
- 종류
- '+' : 더하기
- '-' : 빼기
- '*' : 곱하기
- '/' : 몫 구하기
- '%' : 나머지 구하기
04. 관계 연산자
- 관계 연산은 두 피연산자의 관계를 비교하여 관계가 성립하면 참을, 성립하지 않으면 거짓을 연산의 결과값으로 생성한다.
- 종류
- '==' : 같다
- '!=' : 같지 않다
- '>' : (왼쪽이) 크다
- '>=' : (왼쪽이) 크거나 같다
- '<' : (왼쪽이) 작다
- '<=' : (왼쪽이) 작거나 같다
05. 논리 연산자
- 주어진 값에 대하여 AND 연산은 모두 참일 경우에만 참 OR 연산은 하나라도 참이면 결과는 참 NOT 연산은 참일 경우는 거짓, 거짓일 경우는 참을 결과값으로 생성
- 종류
- ! (not) : 부정
- && (and) : 모두 참이면 참
- || (or) : 하나라도 참이면 참
06.대입 연산자와 증감 연산자
1) 대입 연산자
- 대입 연산자는 변수에 어떤 값을 저장할 때 사용한다
- 연산 대상과 대입 대상이 되는 변수가 같을 경우는 복합 연산자를 이용하여 축약하여 표현할 수 있다.
- 대입 연산자의 결합 방향은 우측에서 좌측으로 연산이 수행된다.
- 종류
- '=' : 대입
- '+=' : A=A+B와 동일
- '-=' : A=A-B와 동일
- '=' : A=AB와 동일
- '/=' : A=A/B와 동일
- '%=' : A=A%B와 동일
2) 증감연산자
- 변수의 값을 1씩 증가시키거나 1씩 감소시킬 때 사용
- ++는 1씩 증가를 의미한다.
- --는 1씩 감소를 의미한다
- 전위 증감연산자 : ++A , --A
- 후위 증감연산자 : A++, A--
07. 삼항 연산자
- 조건 연산자라고도 한다.
- 피연산자가 3개가 필요한 연산자를 의미한다
- 'A?B:C' : A가 참이면 B를, 거짓이면 C를 결과값으로 설정한다.
08. 비트 연산자
- '&' (and) : 모든 비트가 1일 때만 1
- '^' (xor) : 모든 비트가 같으면 0, 하나라도 다르면 1
- '|' (or) : 모든 비트 중 한 비트라도 1이면 1
- '~' (not) : 각 비트의 부정, 0이면 1, 1이면 0
- '<<' (왼쪽 시프트) : 비트를 왼쪽으로 이동
- '>>' (오른쪽 시프트) : 비트를 오른쪽으로 이동
09. 기타 연산자
- sizeof 연산자 : C언어에서 변수, 변수형, 배열의 저장 장소의 크기를 Byte 단위로 구한다.
- 콤마 연산자 : 성격이 동일한 자료형을 나열할 때 사용
- Cast 연산자 : 명시적 형 변환시에 사용하며 다른 데이터 형으로 변경할 때 이용
- 포인터 연산자 : C언어의 단항연산자중, &는 변수의 주소를 의미하고 *는 변수의 내용을 의미한다.