2017-03-24 6 views
0
내가 코드를 이해하지 않는 "경우"로 다른 사람에 의해 작성되고 충돌을 통해 찾고 있었다

: 함수에 전달char_pointer가 의미하지 않는 것은 무엇입니까?

void getText(const char* objName, char* buffer, uint16_t len) 

버퍼, 인 문자 배열이 선언 된 함수

if (!buffer || len == 0) 

: 문자 buff [10] = {0};

"! buffer"란 무엇을 의미합니까? 그것이 bool이라면 나에게 의미가있을 것이다. 그러나 나는 Char_Pointer가 아닌 것과 같은 진술을 본 적이 없다. 설명해 주시겠습니까?

답변

1

"not null"을 의미합니다. 논리 연산자가있는 형식을 사용하면 가능하면 "bool"으로 컨텍스트 변환되며 포인터의 경우 null이 아닌 경우 변환 결과는 true입니다. 자세한 내용은 http://en.cppreference.com/w/cpp/language/implicit_conversion의 부울 변환을 참조하십시오.

구문에서 C 또는 C++을 사용한다고 가정하지만 일반적으로 프로그래밍 언어로 질문에 태그를 지정해야합니다.