Мне любопытно, почему переменная, явно присвоенная nil, печатается как (null) с NSLog:
NSString *myVar = nil;
NSLog(@"%@", myVar);
# RESULT: ' (null) '
Это, конечно, довольно запутанно, учитывая все виды «небытия», которые нужно выяснить в Objective-C, и заставило меня попробовать протестировать различные синтаксисы IF NULL.