nil和NULL的区别是什么?
的有关信息介绍如下:一、含义不同
1、Nil:只能作为指针变量的值。 如果1个指针变量的值是NULL值代表.。代表这个指针不指向内存中的任何1块空间。
2、Null:NULL等价于0 NULL是1个宏,代表0。
二、用法不同
1、Nil:OC的类指针用nil。
2、Null:C指针用NULL。

三、原理不同
1、Nil:如果一个类指针的值为nil 代表这个指针不指向任何对象。Person *p1 = nil;
通过p1指针去访问p1指针指向的对象的属性 这个时候会运行报错。
2、Null:如果一个类指针的值为NULL,代表这个指针指向空白的空间,Person *p1 = NULL。通过p1指针去调用对象的方法 运行不会报错 但是方法不会执行没有任何反应。
参考资料来源:百度百科-nil
参考资料来源:百度百科-NULL



