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 :

enum et #define


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2017
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 29
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Janvier 2017
    Messages : 8
    Par défaut enum et #define
    Bonjour à tous et à toutes
    J'ai un léger soucis qui au vu du niveau du forum va vous paraitre dérisoir mais j'ai du mal à comprendre pourquoi le compilateur (je travail sous Wind River Workbench) me jette sur cette erreur alors que dans ma logique il ne devrait pas.

    Nous avons le morceau de code suivant:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    #define RTS 0x4FE7
    typedef enum {TxEN,DTR,RxE,SBRK,ER,IR,EH, RTS} TGCont8251List;
    donc il ne veut ni prendre RTS ni 0x4FE7 dans son enumeration...
    Le compilo me jette à chaque fois j'ai essayer de remplacer RTS par sa valeur: ça veut pas, laisser RTS: ça veut pas...
    Pourriez-vous m'aidez svp
    Merci d'avance

  2. #2
    Membre Expert
    Inscrit en
    Mars 2005
    Messages
    1 431
    Détails du profil
    Informations forums :
    Inscription : Mars 2005
    Messages : 1 431
    Par défaut
    Il te jette à raison : tu essaies de faire passer une valeur numérique comme membre d'une énumération. Le compilateur ne connaît aucun identifiant nommé RTS puisque le préprocesseur lui a précédemment partout substitué 0x4FE7.

    Ce que tu désires faire s'écrit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    #define DEFAULT_RTS 0x4FE7
    typedef enum {TxEN,DTR,RxE,SBRK,ER,IR,EH, RTS = DEFAULT_RTS} TGCont8251List;

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

Discussions similaires

  1. #define VS typedef enum
    Par Bktero dans le forum Débuter
    Réponses: 9
    Dernier message: 11/06/2010, 09h13
  2. enum / define
    Par oodini dans le forum C
    Réponses: 6
    Dernier message: 15/06/2009, 11h24
  3. [TABLE][ENUM] u champs à choix multiple ?
    Par narmataru dans le forum SQL
    Réponses: 2
    Dernier message: 04/11/2003, 10h25
  4. Define sur plusieurs lignes
    Par Gogoye dans le forum C
    Réponses: 6
    Dernier message: 06/10/2003, 11h45
  5. define avec GCC.
    Par vagabon dans le forum Autres éditeurs
    Réponses: 4
    Dernier message: 12/06/2003, 14h04

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