이 조건부 연산자는 삼항 연산자라고도 합니다. 이 연산자에는 3단계가 있습니다.
Exp1 ? Exp2 : Exp3;
여기서 Exp1, Exp2 및 Exp3은 표현식입니다. 결장의 사용과 위치를 확인하십시오. 의 값은 ? 표현식은 다음과 같이 결정됩니다. Exp1이 평가됩니다. true이면 Exp2가 평가되어 전체 ? 표현. Exp1이 false이면 Exp3이 평가되고 그 값이 표현식의 값이 됩니다.
? 세 개의 피연산자가 필요하고 다음 형식을 갖는 if-else 문을 대체하는 데 사용할 수 있기 때문에 삼항 연산자라고 합니다.
if(condition) { var = X; } else { var = Y; }
예를 들어 다음 코드를 고려하십시오.
if(y < 10) { var = 30; } else { var = 40; }
위의 코드는 다음과 같이 다시 작성할 수 있습니다.
var = (y < 10) ? 30 : 40;
예시 코드
#include <iostream> using namespace std; int main () { // Local variable declaration: int x, y = 10; x = (y < 10) ? 30 : 40; cout << "value of x: " << x << endl; return 0; }
출력
value of x: 40