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

Visual C++ Discussion :

Problèmes avec VS2005


Sujet :

Visual C++

  1. #1
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 766
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 766
    Par défaut Problèmes avec VS2005
    Hello,

    Voici un bout de code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    float xp;
    float bidule1;
    float bidule2;
    float bidule3;
    float logp5;
     
    logp5 = logf(0.5);
     
    bidule1 = (float)(_value.r);
    bidule2 = logp5/logf(_bias.x);
    bidule3 = powf(bidule1, bidule2);
     
    xp = powf(_value.r, (logp5/logf(_bias.x)));
    Pour une raison inexplicable, la dernière ligne ne se compile pas sous VS2005 (pas de problèmes sous 2003).
    Si je remplace le 2ème terme par bidule2, il n'y a pas d'erreur de compilation.
    Voici les message d'erreur (toutes concernant cette ligne) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    error C2143: erreur de syntaxe : absence de ')' avant ';'
    error C2143: erreur de syntaxe : absence de ';' avant ')'
    error C2059: erreur de syntaxe : ')'
    error C2059: erreur de syntaxe : ')'
    Merci de votre coup de main...

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Code non compilable (_bias et _value non définis).
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 766
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 766
    Par défaut
    Euh... Si, ils ont définis mais je ne l'ai pas mis dans le code, d'une part parce que j'avais précisé que seule la dernière ligne ne fonctionnait pas (pas de problèmes pour calculer bidule1, bidule2 et bidule3), et d'autre part parce qu'ils sont définis par des #define en cascade...

    Donc, le problème ne vient pas de là.

  4. #4
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Tu es sûr ?
    Avec des define en cascade ?

    De toute façon, on ne peut pas t'aider sans un code compilable, et ça m'étonnerait qu'on puisse reproduire l'erreur sans tes "define en cascade" ...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 766
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 766
    Par défaut
    Voilà quelque chose qui devrait dissiper tes doutes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    #include <math.h>
     
    float xp;
    float bidule1, bidule2, bidule3;
    float logp5;
     
    logp5 = logf(0.5);
     
    bidule1 = (float)(0.5);
    bidule2 = logp5/logf(0.8);
    bidule3 = powf(bidule1, bidule2);
    xp = powf(0.5, logp5/logf(0.8) );
    Le problème est toujours présent : la dernière ligne ne compile pas (mêmes messages d'erreur). Si on la dégage, no soucy.

  6. #6
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    Par défaut
    Pas du C.
    Poste un code minimal et "compilable" qui montre l'erreur, sinon NULL ne pourra t'aider.
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  7. #7
    Membre expérimenté
    Inscrit en
    Décembre 2003
    Messages
    272
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 272
    Par défaut
    J'utilise <cmath> au lieu de <math>, je mets une fonction autour de ton code, et je n'ai aucun problème...

  8. #8
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 766
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 766
    Par défaut
    Ca me marche pas avec cmath, mais probablement parce que c'est un fichier C... Non ?

    cmath semble utiliser des espaces de nommage, non reconnus en C, il me semble.

  9. #9
    Rédacteur

    Avatar de millie
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    7 015
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 7 015
    Par défaut
    Citation Envoyé par Ulmo
    J'utilise <cmath> au lieu de <math>, je mets une fonction autour de ton code, et je n'ai aucun problème...
    <cmath>, <cstdio> ou encore <cstdlib>, ce sont des entêtes pour le langage C++

  10. #10
    Membre expérimenté
    Inscrit en
    Décembre 2003
    Messages
    272
    Détails du profil
    Informations forums :
    Inscription : Décembre 2003
    Messages : 272
    Par défaut
    Pardon, confusion de forum.
    Mais comment fait-on du C avec VS2005 ?

  11. #11
    Rédacteur/Modérateur
    Avatar de Trap D
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    4 942
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2003
    Messages : 4 942
    Par défaut
    Tu crées un projet vide et tu ajoutes les .c au projet. Ça marche très bien.
    "La haine seule fait des choix" - Koan Zen
    "Il ne faut pas être meilleur que les autres, il faut être meilleur que soi." Albert Jacquard
    "Ceux qui savent où ils ont posé leur parapluie ne sont pas alcooliques." - pgibonne.
    Faites du Prolog, ça vous changera les idées !
    Ma page Prolog
    Mes codes sources commentés

    Mon avatar : La Madeleine à la veilleuse de Georges de La Tour

  12. #12
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 766
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 766
    Par défaut
    Pas toujours, malheureusement. :-)

    La personne qui a déplacé mon "fil" estime-t-elle que c'est un problème Visual Studio plutôt qu'un problème C ?

  13. #13
    Membre éprouvé
    Profil pro
    Inscrit en
    Novembre 2004
    Messages
    2 766
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2004
    Messages : 2 766
    Par défaut
    Problème résolu :
    Ca vient d'un bogue dans la macro logf.

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

Discussions similaires

  1. MySQL et VS2005 problème avec MySQL connector 5.1
    Par AkH dans le forum Accès aux données
    Réponses: 1
    Dernier message: 29/07/2007, 23h28
  2. [VB.net][vs2005] Problème avec les expressions régulières
    Par zouhib dans le forum Windows Forms
    Réponses: 13
    Dernier message: 22/06/2006, 15h56
  3. [MFC] [VS2005] Probléme avec le Style XP (? !)
    Par Exsilius dans le forum MFC
    Réponses: 2
    Dernier message: 28/03/2006, 10h28
  4. Problème avec la mémoire virtuelle
    Par Anonymous dans le forum CORBA
    Réponses: 13
    Dernier message: 16/04/2002, 16h10

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