c - atof renvoie toujours 0,0 sous la plateforme Linux
PHP中文网
PHP中文网 2017-07-05 10:45:54
0
1
1086

Le code est le suivant

#include<stdio.h>

int main(){


   char* s = "123.3";
   double d = atof(s);
   printf("%lf\n", d);

   return 0;
}

Le résultat est toujours 0,000000, pas 123,3, pourquoi ?

PHP中文网
PHP中文网

认证0级讲师

répondre à tous(1)
迷茫

Parce que vous n'avez pas inclus stdlib.h ( ゜ロ゜) »
C'est une fosse cachée. Étant donné que vous n'avez pas inclus le fichier d'en-tête, il n'y a pas de déclaration de fonction. Sans déclaration de fonction, la valeur de retour par défaut de la fonction de bibliothèque est de type int.
Si vous ajoutez -Wall lors de la compilation, cela vous indiquera clairement qu'il n'est pas déclaré.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal