[C] 쇼트 서킷으로 조건문 구현

[원본 링크]

보통 조건문을 사용할땐 if 키워드를 사용하곤 한다.

너무 진부하지 않은가?

스위치도 있지만 경우가 좀 다르고

삼항연산자도 나쁘지 않지만 더 세련된 조건문의 대체재가 있다.

바로 쇼트서킷이라 하는 최적화 현상을 이용하는 것이다.

이게 뭐냐면, 가령 && 연산을 한다 쳐보자.
이 연산은 양쪽이 전부 true일 경우에만 true를 반환한다.
그 말인즉 하나라도 false면 무조건 false가 된다는 말이고, &&연산의 앞부분이 false로 판명나면 뒷부분을 무시하고 지나가도록 최적화를 한다.
이게 바로 쇼트서킷이다.

그리고 ||도 마찬가지다. 앞부분이 true면 그냥 넘어간다.

이 현상을 이용해서 우린 더 멋진 분기를 구성해볼수 있다.

이런 식으로


image