其实没什么区别
都是给指针赋值为空
区别就是看 之前这个指针指向的是基本数据类型 还是对象
如果之前指向的是基本数据类型 那么就用nil 赋空
如果之前指向的是对象类型 那么就用NULL赋空
int a = 10; int *p = &a; p = NULL; NSArray *array = [NSArray array]; array = nil;
对应OC语言来讲
NSArray *array = [NSArray array];
这行代码 也代表array这个指针 指向一个数组对象,在内存中是有两块区域的