[c] 연산자 우선순위 규칙 해석
연산자 우선순위는 코드에서 표현식을 해석하는 데 중요한 역할을 합니다. 연산자에는 우선순위와 결합성이 있으며, 코드 실행 시 표현식을 올바르게 해석하기 위해 이러한 규칙을 이해해야 합니다.
연산자 우선순위
연산자 우선순위는 일반적으로 PEMDAS 규칙을 따릅니다. 이는 괄호(Parentheses), 지수(Exponents), 곱셈 및 나눗셈(Multiplication and Division), 덧셈 및 뺄셈(Addition and Subtraction) 순서로 우선순위가 부여됨을 의미합니다.
예를 들어, 3 + 4 * 5
표현식에서는 곱셈이 덧셈보다 우선되므로 먼저 4 * 5
가 계산되고, 그 후에 덧셈이 이루어집니다. 결과적으로 3 + 20
이 되어 최종 결과는 23
이 됩니다.
결합성
우선순위가 같은 연산자가 여러 개 있는 경우 결합성이 적용됩니다. 결합성은 연산자의 방향을 나타내며, 왼쪽에서 오른쪽으로 또는 오른쪽에서 왼쪽으로 계산을 진행함을 의미합니다.
예를 들어, 대입 연산자(=
)의 결합성은 오른쪽에서 왼쪽입니다. 따라서 a = b = c
표현식은 오른쪽부터 시작하여 b
의 값을 c
에 대입하고 그 결과를 a
에 대입하게 됩니다.
이러한 우선순위와 결합성 규칙을 이해하면 복잡한 표현식을 올바르게 해석하고 실행할 수 있습니다.
참고문헌:
- https://en.cppreference.com/w/c/language/operator_precedence