c++ NULL null nullptr

NULL为0,null不存在.

c语言中“\0”与NULL 的区别?

他们在字符串中呢?
例如 while(*pf)
     while(*pf!=0)
有什么区别?

 

\0\为转义符,后跟数字为八进制,\0就是表示数字0
NULL在头文件的定义也是0,没区别。
它们指的都是ASCII字符集中的第一个字符,标志“空”的一个状态字。
while(*pf)
while(*pf!=0)
效果也一样,都是判断指针为空(假)做为终止循环的条件。
指针这种用法一般是在调用函数中,会传递一个指针,然后返回已指向目标的指针,用户通过该指针就可以操纵所需功能了。如果调函数失败,返回的就是空指针。
这可指导用户,对失败情况做另外的处理。

 

一般NULL实际是 (void *)0,经常用于指针初始化,代表不指向任何有效存储区。
'\0'是一个字符,代表空的字符,如此而已,呵呵。
补充点,注意区分NULL和nul
c++ 中没有null,头文件中没有这个宏。
posted @ 2012-06-28 18:47  springbarley  阅读(341)  评论(0)    收藏  举报