空指针1.空指针指不含有任何内存地址的指针.在没有具体初始化之前,其被符值为0Dog * dog = nil;Dog * dog = NULL;都为空指针2.野指针指指向的内存为垃圾内存,导致其值不确定.野指针的危害程度远远大于空指针.因为当一个指针所指向的对象为空时,如果扔向该对象发送消息时,程序就会崩溃.所以一点要在完全释放对象后将指针复制为nil.一面出现野指针的问题.但是空指针是可以被发送消息的 nil.Nil.NULL.NSNull一直了解,但是一直忘,所以今天总结下.我的理解中他们重…
nil -> Null-pointer to objective- c objectNIL -> Null-pointer to objective- c class 表示对类进行赋空值NULL: A null pointer to anything else, is for C-style memory pointers. 用于对非对象指针赋空值,比如C指针看一下用法NSURL *url = nil:Class class = Nil:int *pointerInt = NULL:ni…
[NSNull null]是一个对象,其类为NSNULL(isa):里面没有任何变量.函数.和实现. nil的处理展示出消息机制的优越性,相对于函数调用的空指针处理. ENTRY objc_msgSend # check whether receiver is nil teq a1, #0 itt eq moveq a2, #0 bxeq lr # save registers and load receiver's class for CacheLookup stmfd …