조건 연산자 ?: C++
목차
조건 연산자는 if else 문을 간단한 기호로 표시한 것 입니다. 항을 세개 사용하기 때문에 삼항 연산자 또 조건에 따라 분기하므로 조건 연산자라고도 합니다. C++에서 항(피연산자 – operand)을 세개 사용하는 연산자입니다.
표현식1 ? 표현식2 : 표현식3
의 형식을 가지고 있습니다. 표현식1의 값이 true 인 경우 표현식2를 false 인 경우 표현식3을 리턴합니다. 아래의 간단한 예제에서는 사용자에게 숫자를 입력 받아서 0보다 크면 1 작으면 0을 리턴합니다. (중간에 0이 있지만 간단하도록 생략한 예제)
#include<iostream> int main() { using std::cout; using std::cin; using std::endl; cout << "숫자를 입력하시오." << endl; int num1; cin >> num1; int num2 = num1 > 0 ? 1 : 0; cout << "양수는 1, 음수는 0 : " << num2 << endl; return 0; }
조건 연산자를 사용하는 이유는 if else 문으로는 여러 줄에 걸쳐서 쓰는 코드를 간단하게 한 줄로 표현할 수 있기 때문입니다. 위의 한 줄을 if문으로 쓰면 아래와 같습니다.
int a, b; if(a > 0) b = 1; else b = 0;
한 줄로 쓰면 훨씬 간결하게 눈에 들어옵니다. 다만 제어 내용이 복잡한 경우 한 줄로 쓰면 더 복잡해지니 적당한 가독성을 고려하여 if else 문과 병행하여 사용합니다.
요약
C++의 조건 연산자 ?: 에 대해서 알아봤습니다. if else 문과 함께 상황에 따라 적절하게 사용하는 것이 좋습니다.