作业帮 > 综合 > 作业

为什么定义一个指针时,可以写成指针不等于0呢?如char *p,后面有句这样的 if(p!=0),可以写成if(p!=N

来源:学生作业帮 编辑:作业帮 分类:综合作业 时间:2024/05/21 21:03:36
为什么定义一个指针时,可以写成指针不等于0呢?如char *p,后面有句这样的 if(p!=0),可以写成if(p!=NULL)?
NULL是一个事先定义的宏
#define NULL 0
所以二者写法等价.
为什么常见指针这样比较,而不是其他整形这么写?原因是约定俗成,一般的,NULL表示空指针.
事实上你也可以这么来:int a;
if(a != NULL)
也是合法的,只不过可读性不太好,容易让人误解.