팔만코딩경
/
Library DB
/
C언어 기초문법(?)
/
C언어 5강. 연산자
Search
Share
C언어 5강. 연산자
Gallery view
Search
연산자
•
연산자
◦
값에 변화를 주거나 비교 등의 역할을 하는 기호
값은 수를 뜻한다. 수에는 정수, 부동소수, 문자 등을 뜻한다.
프로그래밍 언어에서는 연산자는 계산만을 하는게 아니라 비교등을 포함해서 뜻이 확대되어 있다.
•
연산자의 종류
◦
대입 연산자 : =
◦
산술 연산자 : +, -, *, /, %
◦
산술 + 대입 연산자 : +=, -=, *=, /=, %=
◦
증가, 감소 연산자: : ++, - -
◦
관계 연산자 : <, >, ≤, ≥, ==, ≠
◦
논리 연산자 : &&, ||, !
◦
부호 연산자 : +, -
◦
형(type) 변환 연산자 : ( )
연산자 기초
대입 + 산술 연산자
•
표현식을 통한 의미
A += B, A -= B, A /= B, A %= B, A *= B
풀이
A += B (A = A + B)
A -= B (A = A - B)
A *= B (A = A * B)
A /= B (A = A / B)
A %= B (A = A % B)
증가 ++ 감소 연산자 - -
•
표현식
A++, ++A; → A = A + 1;
A- -, - - A; → A = A - 1;
•
++, - - 의 위치의 의미
◦
전위식(prefix) : 변수 값을 1먼저 증가, 감소
◦
후위식(postfix) : 후위식이 포함된 문장을 끝낸 후에 변수 값을 1증가 또는 감소
관계(비교) 연산자 relational operator
연산자
•
2 * 6 + 4 * 9 / 3 의 계산 순서는 ?
◦
연산 순서에 따라 결합
◦
높은 우선 순위를 가진 연산자가 먼저 계싼
◦
'결합성'은 같은 순위의 연산자가
둘 이상 연속적
으로 있을 때 계산하는 연산 순서
•
연산자 우선 순위
우선 순위
연산자
결합성
1
( ), [ ], . ->, 후위++, 후위 —
좌 → 우
2
전위++, 전위—, sizeof, &, *(포인터), +(부호), -(부호), ~, !
좌 ← 우
3
type casting (데이터)
좌 ← 우
4
*, /, %
좌 → 우
5
+, - (이항연산자)
좌 → 우
6
<<, >>
좌 → 우
7
<. >, <=, >=
좌 → 우
8
==, !=
좌 → 우
•
우리가 연산순위를 배웠다. 하지만 이게 수백줄의 코드를 하다보면 이게 나중에 햇갈리거나, 다른사람이 봤을때 이해가 안될 수 도 있기때문에, 모든 연산자들중에 최상위의 순위를 가지고 있는 ( ) 괄호를 사용해서 수식을 만들어주는게 보기에도 좋고, 나중에 수정하기에도 편하다.
•
2 * 6 + 4 * 9 / 3 이 식을 괄호를 붙힌다면 ?
◦
(2 * 6) + (4 * (9 / 3)) == 24
◦
이렇게 할 수 있다. 훨씬 보기좋다?! ㅎㅎ
연산자 우선순위