본문 바로가기
개발/C++ (98,03,11,14,17,20,23)

Before Classic C++ : Conditional Operator

by snowoods 2025. 10. 28.

Before Classic C++

 

조건 연산자 (?:)

 

개요

조건 연산자(?:)는 C++에서 유일하게 세 개의 피연산자를 갖는 삼항 연산자(ternary operator)입니다. if-else 문을 간결하게 표현하는 데 사용됩니다.

 

C++ 버전별 주요 키워드 도입 시기

  • C99 이전 (C/C++): 조건 연산자는 C 언어 초기부터 존재했으며, C++에서도 처음부터 지원되었습니다.

 

내용 설명

조건 ? 표현식1 : 표현식2의 형태로 사용됩니다.

  • 조건이 참(true)이면 표현식1이 평가되고, 그 결과가 전체 연산의 결과값이 됩니다.
  • 조건이 거짓(false)이면 표현식2가 평가되고, 그 결과가 전체 연산의 결과값이 됩니다.

 

예제 코드

#include <iostream>
#include <string>

int main() {
    // 예제 1: x에 값 할당
    // 5 > 2 조건이 참이므로 x에 1이 할당됩니다.
    int x = (5 > 2) ? 1 : 0;
    std::cout << "--- Example 1 ---" << std::endl;
    std::cout << "The value of x is: " << x << std::endl;

    // 예제 2: 합격/불합격 판정
    int score = 85;
    std::string result = (score >= 60) ? "Pass" : "Fail";
    std::cout << "\n--- Example 2 ---" << std::endl;
    std::cout << "The test result is: " << result << std::endl;

    return 0;
}

 

실행 결과

--- Example 1 ---
The value of x is: 1

--- Example 2 ---
The test result is: Pass

 

활용팁

  • 간단한 조건에 따라 값을 할당할 때 if-else 블록보다 코드를 더 짧고 간결하게 만들 수 있습니다.
  • 조건 연산자를 중첩해서 사용하면 코드가 복잡해지고 가독성이 떨어지므로, 복잡한 로직에는 if-else 문을 사용하는 것이 좋습니다.

 

'개발 > C++ (98,03,11,14,17,20,23)' 카테고리의 다른 글

Before Classic C++ : Preprocessor  (0) 2025.10.30
Before Classic C++ : Bitwise Operators  (0) 2025.10.29
Before Classic C++ : enum  (0) 2025.10.27
Before Classic C++ : Comma Operator  (0) 2025.10.26
Before Classic C++ : goto  (1) 2025.10.25
Before Classic C++ : continue  (0) 2025.10.24
Before Classic C++ : break  (1) 2025.10.23
Modern C++ : std::exception (98, 11)  (0) 2025.10.22