《编写高质量代码:改善Objective-C程序的61个建议》——建议9:高度警惕空指针和野指针的袭击
本节书摘来自华章出版社《编写高质量代码:改善Objective-C程序的61个建议》一 书中的第2章,作者:刘一道,更多章节内容可以访问云栖社区“华章计算机”公众号查看。
建议9:高度警惕空指针和野指针的袭击
在Objective-C中,利用指针写代码,特别对于指针掌握不熟练的人,经常会遭遇到空指针和野指针的困扰,造成应用出现一些莫名其妙的崩溃。因此,有必要在写Objective-C代码时,高度警惕空指针和野指针的袭击。
兵法上讲究“知己知彼,百战不殆”,那么就从什么是空指针和野指针来入手,认识这两个经常搞袭击的常客。
- 认识空指针和野指针
没有存储任何内存地址的指针就称为空指针(NULL指针)。空指针就是被赋值为0的指针,在没有被具体初始化之前,其值为0。也就是说,一个指针变量分配一个NULL值的情况下,没有确切的地址被分配。
下面两个都是空