'(bCondition == NULL)'과 '(NULL == bCondition)'의 구별
다양한 프로그래밍 상황에서, 특히 다음과 같은 경우 MSDN 리소스를 참조할 때 '(bCondition == NULL)' 및 '(NULL)처럼 서로 바꿔 쓸 수 있는 것처럼 보이는 두 가지 조건식을 접할 수 있습니다. == b조건)'. 언뜻 보면 동일해 보일 수 있지만 잠재적인 오타를 처리할 때 동작에 미묘한 차이가 있습니다.
변수를 NULL과 비교할 때 더 나은 오류를 위해 '(NULL == bCondition)'을 사용하는 것이 좋습니다. 비교 연산자 '==' 대신 할당 연산자 '='를 실수로 잘못 배치한 경우를 감지합니다. 다음 예를 고려하십시오.
코드:
if (bCondition = NULL) // Typos { // Code never executes }
이 경우 '=' 대신 '='(할당)을 실수로 사용하는 오타가 발생했습니다. ='(비교). 할당 연산자가 비교하는 대신 'bCondition'에 NULL을 할당하기 때문에 조건문은 항상 'false'로 평가됩니다. 결과적으로 블록 내의 코드는 절대 실행되지 않습니다.
반면에 '(NULL == bCondition)'을 대신 사용하는 경우:
코드:
if (NULL = bCondition) // Error { // ... }
이 경우 컴파일러는 오타를 감지하고 bCondition에 대한 NULL 할당이 다음과 같다는 것을 나타내는 오류를 발행합니다. 잘못된 작업입니다. 이 오류 감지는 잠재적으로 예기치 않은 프로그램 동작으로 이어질 수 있는 우발적인 할당에 대한 보호 장치 역할을 합니다.
따라서 '(NULL == bCondition)' 표기는 일반적으로 NULL이 있는 조건을 확인하는 데 더 강력하므로 권장됩니다. 오타시 오류처리
위 내용은 C/C에서 `(bCondition == NULL)`보다 `(NULL == bCondition)`이 선호되는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!