The difference between nil, nil, NULL, Nsnull
NIL: A null pointer to an object
Nil: A null pointer to a class
NULL: null pointer to other types (such as base type, C type)
NSNull: Usually represents a null value in a collection
Example:
Nsurl *url = nil;
Class class = Nil;
int *pointerint = NULL;
Nsarray *array = [Nsarray arraywithobjects:[[nsobject alloc] init], [NSNull null], [[NSObject alloc] init], [[NSObject All OC] init], nil];
Why is the empty object in the above array not directly with nil?
If nil is used, it becomes nsarray *array = [Nsarray arraywithobjects:[[nsobject alloc] init], nil, [[NSObject alloc] init], [[NSObject A Lloc] [init], nil];, then the array will end in the second position. printing [array Count] will display 1 instead of 4.
So [NSNull null] can usually be used as a placeholder for an array, thus the count of the array is calculated accurately
iOS nil null nil nsnull difference