IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

 C Discussion :

probleme fonction atof()


Sujet :

C

  1. #1
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Août 2006
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Services de proximité

    Informations forums :
    Inscription : Août 2006
    Messages : 61
    Points : 64
    Points
    64
    Par défaut probleme fonction atof()
    Bonjour,
    je suis debutant en C et je rencontre des problemes dans l'utilisation de la fonction atof.
    voila mon prog simplifié:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    #include <stdio.h>
    #include <math.h>
     
    int main()
    {
    double x;
    char* ch ="0.123";
    x=atof(ch);
     
    printf("%g    %G    %u    %e   ", x ,x ,x ,x);
    }
    j'obtiens ainsi en sortie:
    -1.85543e+09 -1.85543E+09 1409286144 4.271977e+96
    Soit aucune bonne reponse.

    J'aimerai obtenir 0.123.

    Avez vous une idée de la démarche à suivre pour obtenir le bon resultat.

    En vous remerciant.

  2. #2
    Membre chevronné
    Avatar de Anthony.Desvernois
    Homme Profil pro
    Ingénieur sécurité & risque
    Inscrit en
    Juin 2007
    Messages
    1 489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur sécurité & risque
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 489
    Points : 2 244
    Points
    2 244
    Par défaut
    Bonjour,

    Ce serais pas mal de rajouter stdlib aussi.
    "Voyager, c'est découvrir que tout le monde a tort", Aldous Huxley
    "Less is more" Ludwig Mies Van Der Rohe

    Risk & Security Mgmt

  3. #3
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Août 2006
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Services de proximité

    Informations forums :
    Inscription : Août 2006
    Messages : 61
    Points : 64
    Points
    64
    Par défaut
    tu voulais surement dire char ch[]=... non?
    car char[] ch=... ne compile pas chez moi.

    Si c'est le cas, j'obtiens trés exactement les meme sorties.

    En tout cas merci de m'aider.

    idéalement ce que je veux faire c'est faire passer ce double par argv et le recuperer avec atof().

    en faisant x=atof(argv[1]).
    mais pour cela il faudrai que je commence a faire marcher atof.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    613
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 613
    Points : 406
    Points
    406
    Par défaut
    Anthony.Desvernois : ???
    char[] ch = "0.123";
    -> error: expected identifier or ‘(’ before ‘[’ token

    Le plus correct est const char * ch = "0.123";
    ensuite il faut ajouter #include <stdlib.h>
    puis return 0; en fin de main

    %u n'est pas valable pour afficher un double

    Une fois ces corrections effectuées cela fonctionne chez moi (attention atof ne détecte pas les erreurs cf man atof)

  5. #5
    Membre chevronné
    Avatar de Anthony.Desvernois
    Homme Profil pro
    Ingénieur sécurité & risque
    Inscrit en
    Juin 2007
    Messages
    1 489
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Ingénieur sécurité & risque
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 489
    Points : 2 244
    Points
    2 244
    Par défaut
    @cisqo / @pasdeface: gné ?

    cisqo, n'oublie pas de rajouter stdlib
    "Voyager, c'est découvrir que tout le monde a tort", Aldous Huxley
    "Less is more" Ludwig Mies Van Der Rohe

    Risk & Security Mgmt

  6. #6
    Membre du Club
    Homme Profil pro
    Webmaster
    Inscrit en
    Août 2006
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Services de proximité

    Informations forums :
    Inscription : Août 2006
    Messages : 61
    Points : 64
    Points
    64
    Par défaut
    Au top, merci beaucoup!!!

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    613
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 613
    Points : 406
    Points
    406
    Par défaut
    Citation Envoyé par Anthony.Desvernois Voir le message
    @cisqo / @pasdeface: gné ?
    C'est juste que tu avais fait une erreur que tu as corrigé en éditant ton post

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XSL]Probleme fonction recursive
    Par Le-Cortex dans le forum XSL/XSLT/XPATH
    Réponses: 9
    Dernier message: 12/12/2005, 15h10
  2. [Mail] Probleme fonction mail()
    Par tissot dans le forum Langage
    Réponses: 1
    Dernier message: 14/11/2005, 12h55
  3. problème fonctions callback
    Par youp_db dans le forum GTK+ avec C & C++
    Réponses: 1
    Dernier message: 02/10/2005, 14h47
  4. probleme fonction gethostbyname
    Par oclone dans le forum Développement
    Réponses: 6
    Dernier message: 14/04/2005, 10h31
  5. probleme fonction syntaxe
    Par gIch dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 28/02/2005, 09h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo