CNULL
C NULL
NULL is a special value that represents a "null pointer" - a pointer that does not point to anything.
It helps you avoid using pointers that are empty or invalid. You can compare a pointer toNULL to check if it is safe to use.
Many C functions returnNULL when something goes wrong. For example,fopen() returnsNULL if a file cannot be opened, andmalloc() returnsNULL if memory allocation fails. We can check for this using anif statement, and print an error message if something goes wrong.
In this example, we try to open a file that does not exist. Sincefopen() fails, it returnsNULL and we print an error message:
Example
#include <stdio.h>int main() { FILE *fptr = fopen("nothing.txt", "r"); if (fptr == NULL) { printf("Could not open file.\n"); return 1; } fclose(fptr); return 0;}If you try to allocate too much memory,malloc() may fail and returnNULL:
Example
#include <stdio.h>#include <stdlib.h>int main() { int *numbers = (int*) malloc(100000000000000 * sizeof(int)); if (numbers == NULL) { printf("Memory allocation failed.\n"); return 1; } printf("Memory allocation successful!\n"); free(numbers); numbers = NULL; return 0;}Summary
NULLrepresents a null (empty) pointer- It signals that a pointer is not pointing anywhere
- You can compare a pointer to
NULLto check if it's safe to use - Functions like
malloc()andfopen()returnNULLif they fail
Tip: Always check if a pointer isNULL before using it. This helps avoid crashes caused by accessing invalid memory.

