Computer >> 컴퓨터 >  >> 프로그래밍 >> C 프로그래밍

C 언어 표현식(Expression)의 종류와 특징 완벽 정리

C 언어에서 표현식이란?

표현식(Expression)은 연산자와 피연산자가 결합하여 하나의 값으로 평가되는 식을 말합니다. 여기서 피연산자(operand)는 연산이 수행되는 데이터 항목을 의미하며, 연산자(operator)는 해당 데이터에 어떤 연산을 수행할지 나타내는 기호입니다.

예를 들어 다음 식을 살펴보겠습니다.

z = 3 + 2 * 1

곱셈이 덧셈보다 먼저 계산되므로 결과는 다음과 같습니다.

z = 5

C 언어 표현식의 주요 유형

1. 기본 표현식(Primary Expression)

변수 이름, 상수 또는 괄호로 묶인 표현식처럼 가장 기본이 되는 피연산자를 의미합니다.
예: c = a + (5 * b);

2. 후위 표현식(Postfix Expression)

연산자가 피연산자 에 오는 형태입니다.
예: a++

3. 전위 표현식(Prefix Expression)

연산자가 피연산자 에 오는 형태입니다.
예: --b, +ab

4. 단항 표현식(Unary Expression)

하나의 연산자와 하나의 피연산자로 구성됩니다.
예: a++, --b

5. 이항 표현식(Binary Expression)

두 개의 피연산자와 하나의 연산자로 구성됩니다.
예: a + b, c - d

6. 삼항 표현식(Ternary Expression)

세 개의 피연산자와 하나의 연산자로 구성되며, 조건 연산자(? :)가 대표적입니다. 형식은 조건식 ? 값1 : 값2이며, 조건식이 참이면 값1이, 거짓이면 값2가 실행됩니다.

예제 코드

아래는 C 언어에서 다양한 표현식 유형을 설명하는 프로그램입니다.

#include <stdio.h>
int main(){
    int a, b, c, d, z;
    int p, q, r, s, t, u, v;
    printf("a, b, c, d 값을 입력하세요:\n");
    scanf("%d%d%d%d", &a, &b, &c, &d);
    r = a++;          // 단항(후위) 표현식
    s = --b;          // 단항(전위) 표현식
    t = a + b;        // 이항 표현식
    u = c - d;        // 이항 표현식
    v = a + (5 * b);  // 기본 표현식
    z = (5 > 3) ? 1 : 0; // 삼항 표현식
    printf("단항 표현식=%d\n단항 표현식=%d\n이항 표현식=%d\n이항 표현식=%d\n기본 표현식=%d\n삼항 표현식=%d\n", r, s, t, u, v, z);
}

실행 결과

입력값을 2 3 4 6으로 넣으면 아래와 같은 결과가 출력됩니다.

a, b, c, d 값을 입력하세요:
2 3 4 6
단항 표현식=2
단항 표현식=2
이항 표현식=5
이항 표현식=-2
기본 표현식=13
삼항 표현식=1

정리

C 언어의 표현식은 피연산자와 연산자의 개수 및 배치 방식에 따라 기본, 전위, 후위, 단항, 이항, 삼항으로 나뉩니다. 각 유형의 동작 방식을 정확히 이해하면 연산자 우선순위와 평가 순서를 예측하기 쉬워지고, 더 안전하고 읽기 좋은 코드를 작성할 수 있습니다.