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 :

fatal error C1017: invalid integer constant expression


Sujet :

C++

  1. #1
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 158
    Par défaut fatal error C1017: invalid integer constant expression
    Bonjour,

    s'il vous plaît j'ai besoin de votre aide.

    Ben je travaille sur Visual Studio 2005, lors de la compilation d'un projet je trouve l'erreur suivante:

    fatal error C1017: invalid integer constant expression

    qui fait référence à la ligne suivante:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    #ifdef VISP_HAVE_X11
    #include <visp/vpDisplayX.h>
    #elif VISP_HAVE_GDI //// c'est ici que l'erreur est trouvée
    #include <visp/vpDisplayGDI.h>
    #elif VISP_HAVE_GTK
    #include <visp/vpDisplayGTK.h>
    #endif
    sachant que la bibliothèque GDI existe.

    de l'aide s'il vous plaît,

    merci.

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 391
    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 391
    Par défaut
    Comment est définie VISP_HAVE_GDI ?
    Je parie qu'elle est définie à rien du tout. Donc, un #ifdef la détecterait, mais pour un #if, ça plante...
    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 confirmé
    Inscrit en
    Juin 2007
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 158
    Par défaut
    elle est définit dans un autre fichier .h

  4. #4
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 391
    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 391
    Par défaut
    Cela ne répond pas à ma question.
    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 confirmé
    Inscrit en
    Juin 2007
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 158
    Par défaut
    je ne vous ai pas compris alors, pouvez vous expliquer d'avantage?
    merci.

  6. #6
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 391
    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 391
    Par défaut
    As-tu:
    ou:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #define VISP_HAVE_GDI 1
    ?
    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
    Expert confirmé

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Par défaut
    Citation Envoyé par Médinoc Voir le message
    Comment est définie VISP_HAVE_GDI ?
    Je parie qu'elle est définie à rien du tout. Donc, un #ifdef la détecterait, mais pour un #if, ça plante...
    Depuis quand? Les symboles non definis sont remplaces par 0 dans les evaluations necessaires aux directives du preprocesseur.

    Elle doit etre definie a quelque chose qui n'est pas une expression entiere constante pour le preprocesseur. Et tant qu'on n'a pas la definition...

  8. #8
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 391
    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 391
    Par défaut
    Je n'ai jamais dit que ladite expression n'était pas définie, au contraire.
    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.

  9. #9
    Expert confirmé

    Inscrit en
    Novembre 2005
    Messages
    5 145
    Détails du profil
    Informations forums :
    Inscription : Novembre 2005
    Messages : 5 145
    Par défaut
    Citation Envoyé par Médinoc Voir le message
    Je n'ai jamais dit que ladite expression n'était pas définie, au contraire.
    En passant, il ne faut pas confondre entre un -D sur la ligne de commande qui definit la macro a 0 si on ne donne pas de definition et un #define MACRO sans definition.

  10. #10
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 391
    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 391
    Par défaut
    Ah, merci pour le -D, je n'étais pas au courant.
    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.

  11. #11
    Membre confirmé
    Inscrit en
    Juin 2007
    Messages
    158
    Détails du profil
    Informations forums :
    Inscription : Juin 2007
    Messages : 158
    Par défaut
    Bon voilà la réponse si qq aura le mm problème un jour:

    il suffit de remplacer
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    #ifdef VISP_HAVE_X11
    #include <visp/vpDisplayX.h>
    #elif VISP_HAVE_GDI //// c'est ici que l'erreur est trouvée
    #include <visp/vpDisplayGDI.h>
    #elif VISP_HAVE_GTK
    #include <visp/vpDisplayGTK.h>
    #endif
    par 
    #if defined(VISP_HAVE_X11)
    # include <visp/vpDisplayX.h>
    #elif defined(VISP_HAVE_GDI)
    # include <visp/vpDisplayGDI.h>
    #elif defined(VISP_HAVE_GTK)
    # include <visp/vpDisplayGTK.h>
    #endif

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 14/06/2011, 18h34
  2. [1.x] [sfPropelPager] Fatal error: Undefined class constant
    Par beanl dans le forum Symfony
    Réponses: 0
    Dernier message: 14/06/2011, 09h57
  3. Réponses: 2
    Dernier message: 30/04/2011, 12h30
  4. Fatal error RC1107 invalid usage use RC /? for help
    Par Gabrielly dans le forum Visual C++
    Réponses: 3
    Dernier message: 19/11/2006, 13h47
  5. Réponses: 2
    Dernier message: 08/06/2006, 10h43

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