在我們的iOS學(xué)習(xí)中,經(jīng)常會遇到三個空指針nil,Nil和NULL。那麼他們之間有什麼區(qū)別呢?
成都創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),清澗企業(yè)網(wǎng)站建設(shè),清澗品牌網(wǎng)站建設(shè),網(wǎng)站定制,清澗網(wǎng)站建設(shè)報價,網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,清澗網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時我們時刻保持專業(yè)、時尚、前沿,時刻以成就客戶成長自我,堅持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實用型網(wǎng)站。
① nil:指向OC對象的空指針
Nil: 指向OC類的空指針
NULL: 指向其他數(shù)據(jù)類型的空指針
比如:NSString *str = nil;
Class class = Nil;
int *p = NULL;
② nil也用來表示結(jié)束。比如定義一個數(shù)組
NSArray *array = [NSArrayarrayWithObjects:@"1",@"2",@"3",nil,@"4",@"5"];
NSLog(@"%@", array);
結(jié)果:(1,2,3)。
③ 除了這三個指針外,還有一個NSNull,他表示一個空值的對象,通常用來站位。比如:
NSObject *obj = [NSNull null];
NSArray *array = [NSArray arrayWithObjects: @"1", @"2", obj, @"3", nil];
for ( NSString *str in [array objects]) {
NSLog(@“%@”,str);
}
結(jié)果:1,2, ,3.