Conversion Float vers Double ?

pinuspinus Membre
21:48 modifié dans API AppKit #1
Bonjour,

J'ai un souci de conversion de types :

Je récupère des valeurs (qui sont en fait des longitudes/latitudes) sous forme de NSString : "-0.41273", "46.34866"....
J'ai besoin de les récupérer sous forme de double pour pouvoir les intégrer dans une structure de données C.
Or, lorsque je fais [myString doubleValue], ça me renvoie un résultat délirant du genre -1076205013... par contre, si je fais [myString floatValue], je récupère bien les valeurs -0.41273 etc..
Mais mon problème reste entier : je dois les affecter à  des membres d'une structure qui eux, sont des doubles. Et quoique je fasse pour obtenir un double, je récupère systématiquement une valeur du genre -1076205013...

Si l'un d'entre vous peut me guider vers un début de solution, j'en serais super heureux.

D'avance merci.

Pinus.

Réponses

  • AliGatorAliGator Membre, Modérateur
    21:48 modifié #2
    Question : comment tu sais que la valeur que tu récupères a cette valeur ? Tu l'affiches avec un NSLog ? Car c'est peut-être ça le problème, c'est que tu utiliserais le mauvais %machin dans ton NSLog et donc que dans la console ce n'est pas le bon format qui est utilisé pour afficher le nombre.

    Comme quand par exemple tu utilises "%d", qui attend un argument de type "int", ce qui fait que si tu lui fournis un argument de type double, il l'interprète comme si c'était un entier et affiche des choses du genre... ce que tu as ;)
  • pinuspinus Membre
    21:48 modifié #3
    dans 1252254359:

    Question : comment tu sais que la valeur que tu récupères a cette valeur ? Tu l'affiches avec un NSLog ? Car c'est peut-être ça le problème, c'est que tu utiliserais le mauvais %machin dans ton NSLog et donc que dans la console ce n'est pas le bon format qui est utilisé pour afficher le nombre.

    Comme quand par exemple tu utilises "%d", qui attend un argument de type "int", ce qui fait que si tu lui fournis un argument de type double, il l'interprète comme si c'était un entier et affiche des choses du genre... ce que tu as ;)


    En effet si dans NSLog je mets %f, j'ai les bonnes valeurs... ma que couillon !!

    Merci !

    Pinus.
Connectez-vous ou Inscrivez-vous pour répondre.