黑马程序员技术交流社区

标题: 在Objective-C中,nil、NULL有何区别?? [打印本页]

作者: dawsper    时间: 2015-1-23 19:27
标题: 在Objective-C中,nil、NULL有何区别??
Objective-c中,nil和NULL之间有什么区别呢??
网上有说:nil用于对对象进行置空操作,NULL用于指针置空操作;nil跟NULL其实一样,只是对nil对象进行方法调用不抛异常;

经过测试,下面的代码也没什么异常啊?这是为什么?

int *a = NULL;

int *b = nil;

NSError *error = nil;

NSError *error2 = NULL;

[error2 userInfor];
作者: gzf201314    时间: 2015-1-23 22:36
nil:表示对类进行赋空值.
NULL:用于对非对象指针赋空值.
我就知道这一点,希望能帮助你.
作者: cruzer    时间: 2015-1-23 23:54
nil oc对象的字面空值,对应 id 类型的对象,或者使用 @interface 声明的 oc 对象。
Nil oc类类型的书面空值,对应 Class 类型对象。
NULL 是任意的 C 指针空值。
不知道这么说 你是否能理解。。。。。







欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2