C语言中NULL是什么意思?

NULL是一个特殊的指针值,但它实际上是一个宏。

#define NULL (void *)0

即值0,被转换为指针。

用于表示指针是非法的。因此,NULL常用于初始化。

因为是非法指针,取这个指针的值(*操作)会导致程序崩溃。你必须首先指向一个有效空间。