이 질문은 다른 질문과 중복 될 수 있지만이 변경을하기 전에 올바른지 알고 싶습니다. 그래서 어쨌든 여기에서 질문 할 것입니다.C++ - TCHAR 어레이가 비어 있는지 확인하십시오.
if(NULL== m_sLogPath || _tcsicmp(m_sLogPath, trace_path)!=0){//code here}
I :
TCHAR m_sLogPath[MAX_LOGPATH_LEN];
배열을 초기화하고 사용하지만, 잠시 후이 검사가되는 코드의 라인이있다 : 나는 유지하고 오래된 프로젝트에서 코드 줄이있다 m_sLogPath가 비어 있지만 NULL == m_sLogPath가 NULL인지 아닌지를 확인하는 무의미한 검사인지를 확인하는 if 문의 구문이 맞는지 확인하십시오. 나는 NULL == m_sLogPath 조각을 제거해야 할거야, 내 질문은 그 대신에 배열이 비어 있는지 확인해야 하는가? 모든 답변과 도움을 주셔서 감사합니다.
당신이 '잠시 후'말할 때 당신은 여전히 m_sLogPath와 직접 다루고되거나 임의의 지점에서 인수로 전달 된? – sji
어쩌면 그 사람은 스택 할당에 대한 편집증 일뿐입니다. –
원래 배열 (포인터가 인수로 전달 된 후)에 대한 포인터인지 단순히 말하면 매우 유효한 검사입니다. – sji