C언어

[C언어] NULL과 null

_minit 2024. 11. 4. 14:47

NULL, NULL pointer, NULL character 등을 보며 어떤 블로그에는 null, 어떤 블로그에는 NULL으로 나와 있어서 NULL와 null에 대한 의문이 생겼다. NULL와 null에 대해서 알아보자.

 

NULL

표준에 정의된 매크로 상수로, 포인터가 유효한 주소를 가리키지 않는다는 것을 나타내는 특별한 값이다. 보통 #define NULL ((void*) 0) 형태로 정의되며, 주로 포인터가 특정한 값을 가리키지 않을 때 사용된다.

 

null

C언어에는 null이라는 키워드나 상수가 없다. null이라는 이름은 C언어에서 사용하려고 하면 컴파일 오류가 발생한다.

하지만 개념적으로 "널"을 의미하며, 코드 내에서 직접 사용되는 것이 아니라 설명이나 문서에서 사용된다. 널 포인터(null pointer), 널 값(null value) 값은 용어에서 사용된다. 

728x90