1. 연산자의 우선순위와 결합방향의 의미

3 + 4 X 5 ÷ 2 - 10

"위의 수식은 덧셈, 뺄셈 보다는 곱셈, 나눗셈을 먼저 계산해야 한다."

이것이 바로 '연산자의 우선순위' 이다.

 

그리고 곱셈과 나눗셈중에서 

"곱셈과 나눗셈은 왼쪽에 먼저 등장하는 것부터 순서대로 계산한다!"

 

이것이 바로 '결합방향' 이다.

 

즉, 우선순위가 동일한 두 연산자가 하나의 수식에 존재하는 경우,

어떠한 순서대로 연산하는가를 결정하는 것이다.

2. 연산자의 우선순위와 결합방향 표

순위 연산기호 연산자 결합방향
1위 () 함수호출 ->
[] 인덱스
-> 간접지정
. 직접지정
++ 후위증가 (postix)
-- 후위증가 (postix)
후위 증가 
후위 감소
2위 ++ 전위증가 (predix)
-- 전위증가 (predix)
전위 증가
전위 감소
<-
sizeof 바이트 단위 크기 계산
~ 비트 단위 NOT
! 논리 NOT
-, + 부호 연산(음수와 양수의 표현
& 주소연산
* 간접지정 연산
3위 (casting) 자료형 변환 <-
4위 *, /, % 곱셈, 나눗셈 관련 연산 ->
5위 +, - 덧셈, 뺄셈 ->
6위 <<, >> 비트이동 ->
7위 <, >, <=, >= 대소비교 ->
8위 ==, != 동등비교 ->
9위 & 비트 AND ->
10위 ^ 비트 XOR ->
11위 | 비트OR ->
12위 && 논리AND ->
13위 || 논리OR ->
14위 ? : 조건연산 <-
15위 =, +=, -=, *=, /=, %=,
<<=, >>=, &=, ^=, |=
대입연산 <-
16위 , 콤마연산 ->

 

+ Recent posts