根据C++Primer中118页说的,预处理变量NULL在cstdlib头文件中!参考资料:C++Primer
NULL宏是定义在标准库头文件stddef.h中。宏定义如下:undef NULL #if defined(__cplusplus)#define NULL 0#else#define NULL ((void *)0)#endif可以看出c++中 NULL为(int)0 , C中NULL为(void*)0。看来C和C++中NULL宏的值略有不同。
stdio.h 或c++的iostream 只要加入了标准输入输出自然就有了NULL的定义了