본문 바로가기
프로그래밍 언어/c(일반)

삼항 연산자

by [Akashic Records] 개발의선지자 2024. 5. 6.

아래 글은 코딩 도장 사이트를 참고하여 작성하였습니다.

 

삼항연산자는 if/문을 간결하게 사용하기 위해 사용한다.

여기서 삼항 연산자는 ? 를 말한다.

1)사용 형식

- (참과 거짓을  판단할 변수 )  ? (참일때 사용할 값) : (거짓일 때 사용할 값); 

 

#include <stdio.h>

int main()
{
	int num1 = 5;
    int num2;
    
    //아래가 삼항연산자
    num2 = num1 ? 100 : 200; //num1이 참이면 num2에 100을 할당, 거짓이면 num2에 200 할당
    
    
	return 0;
}

 

- (참과 거짓을  판단할 조건식 )  ? (참일때 사용할 값) : (거짓일 때 사용할 값); 

#include <stdio.h>

int main()
{

	int num1 = 10;
    int num2;
    
    //아래에 삼항 연산자
    num2 = (num2 == 10) ? 100 : 200;
    //num1이 10이면 num2에 100을 할당, 10이 아니면 num2에 200을 할당
    
    return 0;
}

 

 

2) 활용

삼항 연산자를 중첩하여 사용하여 중첩 삼항 연산자를 사용할수 있다. 그러나 일반적으로 가독성을 해치고 디버거로

줄 단위 디버깅 시 확인하기 불편하기에 자주 사용하지 않는다.

대부분의 경우에는 if 조건문을 사용하여 여러 줄로 작성하는 것을 권장한다.

if(조건문1) 
{
	if(조건문2)
    	A
    else
    	B
}
else
	C

위 if 조간문은 아래 삼항연산자로 표현할수 있다.

(조건문1) ? (조건문2) ? A : B : C