C中没有对null预定义,所以null和'\0'区别就大了:null只是个合法的用户标识符,而'\0'是预定义为0的字符常量。如果是NULL和'\0',那它们没有区别,都被预定义为值为0的常量,所以混用它们不会产生任何问题,甚至把用它们的地方都改成0也无妨。一般情况下,NULL用于使指针无效或判断指针是否无效...
是没有!在初始化一个指针时,比如:int*a=NULL;这句话的意思是指我们定义了一个“可以”指向整型类型的指针,但是让这个指针暂时不指向一个具体的int类型空间;说白了,就是先生成一个指针,但是不给这个指针赋具体的值!有点抽象?OK,你要知道,指针也是变量,要用一个变量就要赋值!在int*a =NULL的时候,实际上在...
C语言和C++对大小写是敏感的,也就知是说null和NULL是区别对待的。NULL(如已宏定义)代表空地址,null(如没宏定义)只是一个符号。1、其实null和NULL都是字符串,具体看它们宏定义被定义成为什么值。2、在VS中NULL被定义为0,因为习惯上把宏定义的所有字符都大写,当把NULL它赋值给指针时意思为空,...
它表示的是ASCII控制字符中空字符的含义,代码为NUL,非NULL。
不是0,是一个特定值,但是具体是多少不知道。不是null,C中NULL基本和0等价。
检查下你用的软件是否把ctrl+c作为了快捷键,比如Lingoes就是这样的~
目前没有问题,毕竟nullptr是为了标准化,和以后好统一处理,做的改进,目前和NULL等价。而NULL因为历史...
比如为了表示指针未被赋预有效地址,我们设置一个0值,为了防止代码有歧义,也为了可读性(一看就知道表示未定义指针),所以C或者C++中都使用一个特殊定义NULL表示无效值,其本质就是未定义具体数据类型的0值。由于没有定义数据类型,因此也就不具有具体数据宽度和编码,当NULL赋值给16位变量时就是16位全...
C语言里面是没有bool(布尔)类型的,C++里面才有,C语言里面用数值0表示假,非0整数表示真。在C++里面可以使用bool类型。bool类型只有两个值:true =1 、false=0。bool可用于定义函数类型为布尔型,函数里可以有 return TRUE; return FALSE 之类的语句。布尔型运算结果常用于条件语句:if (逻辑表达式...
1、NULL用于表示什么也不指向,也就是空指针((void *)0) 2、0可以被用于任何地方,它是表示各种类型零值的符号并且编译器会挑出它 3、'\0'应该只被用于结束字符串 4、NUL没有被定义于C和C++,它不应该被使用除非你自己定义它,像:#define nul '\0'...