web-dev-qa-db-fra.com

Comment vérifier la valeur NaN dans Objective-C (iOS)

Doublons possibles:
Objective-C - float recherche de nan
Déterminer si NSNumber est NaN

J'ai un problème avec les valeurs NaN dans CGFloat, comment puis-je vérifier si le nombre est valide?

jusqu'à présent, le seul moyen qui fonctionne est:

if ([[NSString stringWithFormat:@"%f", output] isEqualToString:@"nan"]) {
    output = 0;
}

ce qui n'est pas du tout une bonne solution! :) ... et je suis presque sûr qu'il y a autre chose que je devrais faire à la place.

50
Ondrej

Il y a une définition pour vérifier si un nombre est nan inf etc dans math.h (vous pouvez l'utiliser sans importation je pense).

isnan(myValue)

si vous suivez la définition, vous vous retrouverez avec

(x!=x)

il existe également d'autres définitions utiles comme isinf, isnormal , isfinite , ...

144
thomas