Objective-C の int は NAN にできないようです。この比較は false を返します。
int i = NAN;
NSLog(@"isNan: %@", (isnan(i)) ? @"YES" : @"NO");
int を NAN に設定する方法はありますか、または double を使用する必要がありますか?
double d = NAN;
NSLog(@"isNan: %@", (isnan(d)) ? @"YES" : @"NO");
ダブルで動作します。