Nil 和 Null 的区别?
一、概念不同Nil:表示无值,任何变量在没有被赋值之前的值都为nil。Null:是在计算中具有保留的值。二、功能不同Nil:用于区别其他任何值。Null:用于指示指针不引用有效对象。三、针对不同Nil:针对对象,而空对象不是说不占用空间,相当于一个“洗白”,回到初始状态。Null:针对指针,对对象指针和非对象指针都有效,Null不会占用空间。扩展资料Null的编码在所有现代字符集中,空字符的代码点值为零。在大多数编码中,这被转换为具有零值的单个代码单元。例如在UTF-8中,它是一个零字节。然而,在修改的UTF-8中,空字符被编码为两个字节:0xC0,0x80。这允许值为零的字节(现在不用于任何字符)用作字符串终结符。参考资料百度百科--nil百度百科--Null
nil 什么意思
nil(计算机语言)。nil表示无值,任何变量在没有被赋值之前的值都为nil,对于真假判断,只有nil与false、0表示假,其余均为真。Objective-C, Swift, Ruby, Lua中的关键字,与C++里的NULL不同,NULL是一个宏定义,值为0,nil表示无值。在Programming in Lua 程序设计第二版中原文是这样写的:"nil是一种类型,它只有一个值nil,它的主要功能是用于区别其他任何值,就像之前所说的,一个全局变量在第一次赋值前的默认值就是nil,将nil赋予一个全局变量等同于删除它,Lua将nil用于表示一种“无效值(non-value)”的情况,即没有任何有效值的情况。"
nil和Nil及NULL的区别?
1、NULL具有通用性NULL其实就是C\C++的用法,用来表示一个对象指针不指向任何对象,其值为0,当在对象指针为NULL的对象上调用方法或访问成员变量时,会抛异常。2、nil与Nil的表示对象不同NIL -> Null-pointer to objective- c classNIL 特对于表示Object-C的Class类型对象为NULL,表示其对象指针不指向任何对象。nil -> Null-pointer to objective- c objectnil 特对于表示Object-C的除Class类型外的对象为NULL,表示其对象指针不指向任何对象。NSArray末用nil来表示结束。因为在NSArray和NSDictionary中nil中有特殊的含义(表示列表结束),所以不能在集合中放入nil值。如要确实需要存储一个表示“什么都没有”的值,可以使用NSNull类。3、NSNull用在不能使用nil的场合NSNull是一个类,它只有一个方法:+ (NSNull *) null; [NSNull null]用来在NSArray和NSDictionary中加入非nil(表示列表结束)的空值. [NSNull null]是一个对象,用来表示空,他用在不能使用nil的场合。扩展资料:nil与Nil可以简单的理解为Object-C自己搞的对objective- c的NULL表示,用来表示一个对象指针不指向任何对象。但是当在对象指针为nil 或NIL的对象上调用方法或访问成员变量时,返回NO,不会抛异常,程序将继续执行下去。发给nil对象的消息返回值取决于其方法的返回类型。如果返回方法返回某个指针类型(例如对象指针),则返回值是nil.表示安全地将消息传递给了nil对象-nil仅起着传递作用。如果返回方法是返回类型长度和指针类型相等或更小的int话,返回值是零。如果返回值是浮点类型或结构体的话,将得到某个未定义的结果。
nil和Nil及NULL的区别?
1、NULL具有通用性NULL其实就是C\C++的用法,用来表示一个对象指针不指向任何对象,其值为0,当在对象指针为NULL的对象上调用方法或访问成员变量时,会抛异常。2、nil与Nil的表示对象不同NIL -> Null-pointer to objective- c classNIL 特对于表示Object-C的Class类型对象为NULL,表示其对象指针不指向任何对象。nil -> Null-pointer to objective- c objectnil 特对于表示Object-C的除Class类型外的对象为NULL,表示其对象指针不指向任何对象。NSArray末用nil来表示结束。因为在NSArray和NSDictionary中nil中有特殊的含义(表示列表结束),所以不能在集合中放入nil值。如要确实需要存储一个表示“什么都没有”的值,可以使用NSNull类。3、NSNull用在不能使用nil的场合NSNull是一个类,它只有一个方法:+ (NSNull *) null; [NSNull null]用来在NSArray和NSDictionary中加入非nil(表示列表结束)的空值. [NSNull null]是一个对象,用来表示空,他用在不能使用nil的场合。扩展资料:nil与Nil可以简单的理解为Object-C自己搞的对objective- c的NULL表示,用来表示一个对象指针不指向任何对象。但是当在对象指针为nil 或NIL的对象上调用方法或访问成员变量时,返回NO,不会抛异常,程序将继续执行下去。发给nil对象的消息返回值取决于其方法的返回类型。如果返回方法返回某个指针类型(例如对象指针),则返回值是nil.表示安全地将消息传递给了nil对象-nil仅起着传递作用。如果返回方法是返回类型长度和指针类型相等或更小的int话,返回值是零。如果返回值是浮点类型或结构体的话,将得到某个未定义的结果。