NULL 是什么,它是怎么定义的?

问题描述:

NULL 是什么,它是怎么定义的?
1个回答 分类:综合 2014-09-23

问题解答:

我来补答
作为一种风格,很多人不愿意在程序中到处出现未加修饰的 0.因此定义了预处理宏 NULL (在 和其它几个头文件中) 为空指针常数,通常是 0 或者 ((void *)0) 希望区别整数 0 和空指针 0 的人可以在需要空指针的地方使用 NULL.
使用 NULL 只是一种风格习惯; 预处理器把所有的 NULL 都还原回 0,而编译还是依照 上文的描述处理指针上下文的 0.特别是,在函数调用的参数里,NULL 之前 (正如在 0 之前) 的类型转换还是需要.
NULL 只能用作指针常数;
 
 
展开全文阅读
剩余:2000
下一页:请说清为什么