轉載地址L:http://magicalboy.com/null-value-in-objective-c/
nil
nil是Objc對象的字面空值,對應id類型的對象,或者使用@interface聲明的Objc對象。
NSString *text = nil;
id sth = nil;
Nil
Nil是Objc類類型的書面空值,對應Class類型對象。
Class someClass = Nil;
Class strClass = [NSString class];
NULL
NULL是任意的C指針空值。
int *pointer = NULL;
char *pointChar = NULL;
struct Student *student = NULL;
NSNull
NSNull是一個代表空值的類,是一個Objc對象。實際上它只有一個單例方法,一般用於表示集合中值爲空的對象。
NSMutableDictionary *mutableDic = [NSMutableDictionary dictionary];
[mutableDic setObject:[NSNull null] forKey:@"name"];
這裏如果把NSNull換成nil是錯誤的用法.