33. C++ 연산자 우선순위

C++ 연산자 우선순위

1. 개요

1.1 문서 개요

이 문서는 C++에서 연산자가 계산되는 순서를 결정하는 연산자 우선순위와 결합 순서(associativity)에 대해 설명합니다. 복합 표현식에서 연산 순서를 명확히 파악하는 데 중요합니다.

2. 내용

2.1 연산자 우선순위 테이블

다음은 주요 연산자의 우선순위 목록입니다.

우선순위 연산자 결합 방향
1 :: 좌 → 우
2 ++, --, (), [], . 좌 → 우
3 !, ~, +, - (단항) 우 → 좌
4 *, /, % 좌 → 우
5 +, - 좌 → 우
6 <<, >> 좌 → 우
7 <, <=, >, >= 좌 → 우
8 ==, != 좌 → 우
9 & 좌 → 우
10 ^ 좌 → 우
11 ` `
12 && 좌 → 우
13 `
14 ?: 우 → 좌
15 =, +=, -= 우 → 좌
16 , 좌 → 우

2.2 우선순위와 괄호 사용

우선순위가 낮은 연산이 먼저 실행되기를 원할 경우 괄호를 사용해야 합니다.

int x = 10 + 20 * 3;      // 곱셈 우선 → x = 70
int y = (10 + 20) * 3;    // 괄호 우선 → y = 90

2.3 결합 순서와 복합 표현식

int a = 1;
int b = 2;
int c = 3;
int result = a + b * c;  // b*c 먼저 → a + (b*c)

3. 마무리

연산자 우선순위와 결합 방향은 복잡한 표현식의 평가 순서를 이해하는 데 필수적입니다. 실수 방지를 위해 괄호를 적극적으로 사용하여 명확한 계산 순서를 명시할 수 있습니다.

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

error: Content is protected !!
위로 스크롤