C++에서 NULL 선언되지 않은 오류

Naila Saad Siddiqui 2024년2월15일
  1. C+의 NULL 키워드
  2. 관련 미리 정의된 헤더 포함
  3. NULL을 상수로 정의
  4. NULL 대신 0 사용
  5. NULL 대신 nullptr 사용
C++에서 NULL 선언되지 않은 오류

이 기사에서는 C++에서 NULL 키워드와 NULL undeclared 오류에 대해 설명합니다.

C+의 NULL 키워드

NULL은 C++에서 상수이며 값이 0인 포인터 변수를 초기화하는 데 사용됩니다. NULL 또는 0을 서로 바꿔서 사용할 수 있습니다.

포인터를 선언하고 해당 포인터에 저장할 정확한 주소가 없을 때 NULL을 할당하는 것이 좋습니다. 따라서 다른 값을 가리키지 않는 한 널 포인터라고 합니다.

통사론:

DataType *PointerName = NULL;

다음과 같이 NULL 키워드를 사용할 때 오류가 발생하는 경우가 있습니다.

int main() {
  int* p = NULL;
  return 0;
}

출력:

C++ null 선언되지 않은 오류

이제 이 오류를 해결하는 방법에 대해 설명하겠습니다.

관련 미리 정의된 헤더 포함

NULL 키워드는 iostream, stdio 또는 cstddef와 같은 다른 헤더 파일에서 상수로 선언됩니다. 이 오류를 해결하기 위해 다음 중 하나를 포함할 수 있습니다.

#include <iostream>
int main() {
  int* p = NULL;
  return 0;
}

NULLiostream에 정의되어 있으므로 위 코드는 오류 없이 실행됩니다.

NULL을 상수로 정의

코드에서 NULL이라는 상수를 정의할 수 있습니다.

#define NULL 0
int main() {
  int* p = NULL;
  return 0;
}

NULL 대신 0 사용

NULL 대신 0을 사용하십시오. 둘 다 같은 의미입니다.

int main() {
  int* p = NULL;
  return 0;
}

NULL 대신 nullptr 사용

C++ 11과 같은 최신 버전의 C++에서는 NULL 키워드 대신 nullptr을 사용할 수 있습니다.

int main() {
  int* p = nullptr;
  return 0;
}

관련 문장 - C++ Error