c/c++
c/c++ 연산자 우선순위표
Нуеоп
2012. 7. 13. 16:26
우선순위 | 연산자 | 설명 | 결합법칙 |
---|---|---|---|
1 | :: | 범위 확인 (C++만) | 왼쪽에서 오른쪽 |
2 | ++ | 접미사 증가 | |
-- | 접미사 감소 | ||
() | 함수 호출 | ||
[] | 배열 첨자 | ||
. | 참조에 의한 요소 선택 | ||
-> | 포인터를 통해 요소 선택 | ||
typeid() | 런타임 형식 정보 (C++만) (typeid 참조) | ||
const_cast | 자료형 캐스트 (C++만) (const cast 참조) | ||
dynamic_cast | 자료형 캐스트 (C++만) (dynamic_cast 참조) | ||
reinterpret_cast | 자료형 캐스트 (C++만) (reinterpret cast 참조) | ||
static_cast | 자료형 캐스트 (C++만) (static cast 참고) | ||
3 | ++ | 접두사 증가 | 오른쪽에서 왼쪽 |
-- | 접두사 감소 | ||
+ | 단항 덧셈 | ||
- | 단항 뺄셈 | ||
! | 논리적 NOT | ||
~ | 논리적 비트 NOT | ||
(자료형) | 자료형 캐스트 | ||
* | 우회 (역참조) | ||
& | 의-주소 | ||
sizeof | 의-크기 | ||
new , new[] | 동적 메모리 할당 (C++만) | ||
delete , delete[] | 동적 메모리 할당취소 (C++만) | ||
4 | .* | 멤버로의 포인터 (C++만) | 왼쪽에서 오른쪽 |
->* | 멤버로의 포인터 (C++만) | ||
5 | * | 곱셈 | |
/ | 나눗셈 | ||
% | 계수 (나머지) | ||
6 | + | 덧셈 | |
- | 뺄셈 | ||
7 | << | 비트 왼쪽 쉬프트 | |
>> | 비트 오른쪽 쉬프트 | ||
8 | < | 관계적 연산자들에 대해 < 각각의 | |
<= | 관계적 연산자들에 대해 ≤ 각각의 | ||
> | 관계적 연산자들에 대해 > 각각의 | ||
>= | 관계적 연산자들에 대해 ≥ 각각의 | ||
9 | == | 관계적 = 각각의 | |
!= | 관계적 ≠ 각각의 | ||
10 | & | 비트 AND | |
11 | ^ | 비트 XOR (배타적 or) | |
12 | | | 비트 OR (포함적 or) | |
13 | && | 논리 AND | |
14 | || | 논리 OR | |
15 | ?: | 삼중 조건부 (?: 참조) | 오른쪽에서 왼쪽 |
16 | = | 직접 할당 (C++ 클래스를 위해 기본적으로 제공됨) | |
+= | 덧셈에 의한 할당 | ||
-= | 뺄셈에 의한 할당 | ||
*= | 곱셈에 의한 할당 | ||
/= | 나눗셈에 의한 할당 | ||
%= | 나머지에 의한 할당 | ||
<<= | 비트 왼쪽 쉬프트에 의한 할당 | ||
>>= | 비트 오른쪽 쉬프트에 의한 할당 | ||
&= | 비트 AND에 의한 할당 | ||
^= | 비트 XOR에 의한 할당 | ||
|= | 비트 OR에 의한 할당 | ||
17 | throw | 던지기 연산자 (던지기 예외, C++만) | |
18 | , | 쉼표 | 왼쪽에서 오른쪽 |