논리 쇼트서킷을 적용하면 첫 번째 피연산자 expr1
로 결과를 완전하게 구할 수 없는 경우에만 두 번째 피연산자 expr2
가 실행됩니다.
논리 AND 및 OR의 속성으로 인해 모든 조건을 평가하기 전에 논리식의 결과가 완전히 결정될 수도 있습니다. and
논리 연산자는 표현식의 어느 한 조건이라도 false인 경우 논리값 0
(false
)을 반환합니다. or
논리 연산자는 표현식의 어느 한 조건이라도 true인 경우 논리값 1
(true
)을 반환합니다. 이러한 값이 나오면 조기에 논리식의 실행이 종료되며, 이 경우 표현식이 쇼트서킷되었다고 말합니다.
예를 들어, MATLAB®은 A && B
표현식에서 조건 A
가 false이면 조건 B
를 실행하지 않습니다. 조건 A
가 false이면 B
의 값은 연산의 결과에 영향을 주지 않습니다.
if
또는 while
루프 표현식에 사용되는 경우에 한해, 요소별 &
및 |
연산자는 쇼트서킷을 사용하여 표현식을 실행합니다.
참고
쇼트서킷 방식으로 연산을 실행하려면 항상 &&
연산자와 ||
연산자를 사용해야 합니다. 표현식이 논리형 스칼라가 아닌 경우, 쇼트서킷 연산자 &
또는 |
를 사용하면 예기치 않은 결과를 얻게 될 수 있습니다.