Sind NULL und null gleichwertig?

Eigentlich ist meine Frage hier: sindnull undnil gleichwertig oder nicht?

Ich habe ein Beispiel, aber ich bin verwirrt, wenn sie gleich sind, wenn sie nicht sind.

NSNull *nullValue = [NSNull null];
NSArray *arrayWithNull = [NSArray arrayWithObject:nullValue];
NSLog(@"arrayWithNull: %@", arrayWithNull);
id aValue = [arrayWithNull objectAtIndex:0];

if (aValue == nil) {
    NSLog(@"equals nil");
} else if (aValue == [NSNull null]) {
    NSLog(@"equals NSNull instance");
    if ([aValue isEqual:nil]) {
        NSLog(@"isEqual:nil");
    }
}

Hier im obigen Fall zeigt es, dass beidenull undnil sind nicht gleich und es zeigt "entspricht NSNull Instanz"

NSString *str=NULL;
id str1=nil;
if(str1 == str)
{
   printf("\n IS EQUAL........");

}
else
{
    printf("\n NOT EQUAL........");
}

Im zweiten Fall sind beide gleich und es wird "IS EQUAL" angezeigt.

Jede Hilfe wird sehr geschätzt.

Danke, Monish.

Antworten auf die Frage(6)

Ihre Antwort auf die Frage