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 :

type = identificateur


Sujet :

C

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    237
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 237
    Par défaut type = identificateur
    Bonjour a toutes et a tous!!
    J'ai une question d'ordre general.
    Supposons une structure de ce type:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    typedef struct plan
    {
      float a;
      float b;
      float c;
      float d;
    } plan;
    Si dans mon code, je defini un plan de cette maniere:
    Qu'elles sont les consequences?

    Merci

  2. #2
    Membre Expert

    Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 296
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 296
    Par défaut
    pas mal de risque de melange a la lecture du code ...

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    237
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 237
    Par défaut
    ok mais au niveau memoire?

    Si je fais:

    Cela est'il bien interprete?


    ou encore:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    plan plan;
    plan plan1;

  4. #4
    Membre Expert

    Profil pro
    Inscrit en
    Mars 2004
    Messages
    1 296
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2004
    Messages : 1 296
    Par défaut
    non au niveau fonctionnement sa passe, le compilateur interprete correctement
    plan plan,plan1;
    le 1er "mot" sur la ligne est un type, la suite des variables .. donc pas de problème de ce coté la .
    mais je persiste c'est vite illisible et source d'erreur ....

  5. #5
    Membre averti
    Inscrit en
    Mai 2003
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 62
    Par défaut
    Citation Envoyé par vince3320
    Si je fais:
    Cela est bien interprete?
    Normalement oui. et remarque que
    Ne marche bien evidemment pas.

    Le fait de declarer une structure avec le meme nom avec lequelle elle a ete definie ne pose pas de probleme apparent.

    Pour ne pas s'emmeler les pinceaux :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    typedef struct Tplan 
    { 
      float a; 
      float b; 
      float c; 
      float d; 
    } Tplan;
     
    Tplan plan
    Question :
    Est-ce que ce cas est defini par le language C ou bien par le compilateur ?

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    237
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 237
    Par défaut
    pourtant si je fais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    plan plan;
    plan plan1;
    Cela ne compile meme pas!!
    Et l'erreur est "parse error before plan1"

    Mais si je fais:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    plan plan1;
    plan plan;
    la ca passe...

    Je n'ai pas bien compris ta question...

  7. #7
    Membre averti
    Inscrit en
    Mai 2003
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Mai 2003
    Messages : 62
    Par défaut
    Citation Envoyé par vince3320
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    plan plan;
    plan plan1;
    Cela ne compile meme pas !!

    Mais si je fais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    plan plan1;
    plan plan;
    La ca passe...
    Cela doit venir de l'analyse syntaxique du compilateur.
    Dans certain cas syntaxiques, le language peut-etre ambigu.
    Le compilateur peut alors traiter certaines syntaxes et pas d'autres.

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    237
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 237
    Par défaut
    ok merci pour tes reponses!!!!

  9. #9
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut Re: type = identificateur
    Citation Envoyé par vince3320
    Bonjour a toutes et a tous!!
    J'ai une question d'ordre general.
    Supposons une structure de ce type:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    typedef struct plan
    {
      float a;
      float b;
      float c;
      float d;
    } plan;
    Si dans mon code, je defini un plan de cette maniere:
    Qu'elles sont les consequences?
    Les domaines de noms (namespace) sont séparés. Aucun risque syntaxique.

    Personnellement, je trouve ça illisible, et je met un _s a la fin de mes alias de structures.

    http://emmanuel-delahaye.developpez....e.htm#nom_type

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    typedef struct plan
    {
       float a;
       float b;
       float c;
       float d;
    } 
    plan_s;
    mais le tag est-il nécessaire ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    typedef struct
    {
       float a;
       float b;
       float c;
       float d;
    } 
    plan_s;

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

Discussions similaires

  1. Réponses: 5
    Dernier message: 05/02/2011, 20h09
  2. programmation corba: le type "sequence"
    Par Kali dans le forum CORBA
    Réponses: 4
    Dernier message: 28/08/2005, 16h09
  3. Réponses: 2
    Dernier message: 05/06/2002, 12h29
  4. utilisation du meta type ANY
    Par Anonymous dans le forum CORBA
    Réponses: 1
    Dernier message: 15/04/2002, 12h36

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