이 연산자는 if~else문을 일부 대체할 수 있고, 피 연산자가 3개이기 때문에 삼항 연산자 라고도 불린다. 조건 연산자는 다음과 같이 구성된다.
(num1>num2) ? (num1) : (num2);
위 코드에서 조건이 참이면 num1 을 반환하고 거짓이면 num2를 반환한다. 대입연산자보다 조건연산자의 우선순위가 높기 때문에 다음과 같이 활용할 수 있다.
int num3 = (num1>num2) ? num1 : num2;
다음은 조건연산자를 활용하여 입력한 정수의 절댓값을 출력하는 예시이다.
#include <stdio.h>
int main(void)
{
int num, abs;
printf("input num : ");
scanf("%d", &num);
abs = num>0 ? num : num*(-1);
printf("result : %d\n", abs);
return 0;
}
'Language > C, C++' 카테고리의 다른 글
[C] continue (0) | 2020.12.05 |
---|---|
[C] break (0) | 2020.12.05 |
[C] 조건적 실행 (0) | 2020.12.05 |
[C] for (0) | 2020.11.29 |
[C] do~while (0) | 2020.11.28 |