728x90
가끔 if문이 길어지면 보기가 불편할 때가 있습니다.
간단한 if문을 대체할 수 있는 삼항연산자의 사용법입니다.
[ 문법 ]
조건 ? 참일경우 실행할 내용 : 거짓일경우 실행할 내용;
int main()
{
int a = 200;
int b = 100;
a > b ? printf("a가 크네") : printf("b가 크네");
}
위와 같이 문법은 매우 간단합니다. 다시 응용을 좀 해보자면 아래와 같이 쓸 수도 있습니다.
1. 실행할 내용이 변수에 값을 넣어줄 때 (변수가 하나)
- 연산자 우선순위로 인해, c = (a > b ? 1 : 0); 방식으로 실행됨
- 삼항 연산자부터 실행해서 값을 가져온 뒤, c에다가 넣어줌
int main()
{
int a = 200;
int b = 100;
int c = 0;
int d = 0;
c = a > b ? 1 : 0;
printf("c=%d, d=%d", c, d);
}
2. 실행할 내용이 변수에 값을 넣어줄 때 (서로 다른 변수에 넣어줄 때)
int main()
{
int a = 200;
int b = 100;
int c = 0;
int d = 0;
a < b ? (c = 3) : (d = 100);
printf("c=%d, d=%d", c, d);
}
3. 실행할 내용이 변수에 값을 넣어줄 때 (변수 여러 개도 컨트롤 가능)
int main()
{
int a = 200;
int b = 100;
int c = 0;
int d = 0;
a < b ? (c = 3) : (c = 50, d = 100);
printf("c=%d, d=%d", c, d);
}
4. 그 외 뭐든 if문과 같이 여러 가지를 실행 가능
int main()
{
int a = 200;
int b = 100;
int c = 0;
int d = 0;
a < b ? (c = 3) : (printf("메롱"), d = 100);
printf("c=%d, d=%d", c, d);
}
728x90
'▸C언어 > 개발 TIP' 카테고리의 다른 글
조건문(if)과 증감연산자(i++) 사용시 주의사항 (0) | 2019.12.05 |
---|---|
콘솔 깜박임 없애는 방법 (쉬운 더블 버퍼링) (0) | 2019.12.05 |
atoi() 함수 없이 문자열의 숫자를 int타입으로 변환 (0) | 2019.12.05 |
Debug 모드에서 sprintf_s() 함수 사용 시 주의사항 (0) | 2019.12.05 |
댓글