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 :

Structure et unions en C


Sujet :

C

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 46
    Par défaut Structure et unions en C
    J'ai un projet en programmation système, mais ayant peu de notions en C "classique", je suis un peu embété. Notamment, comment accède-ton à un membre d'une union dans une structure :s

    voici le code (fourni par le prof)
    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
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    struct msg_requete {
    	char vide[TAILLE_TEXTE];
    };
     
    struct msg_reponse {
    	char lettre;
    	int position;
    	char vide[TAILLE_TEXTE];
    };
     
    struct msg_test_texte {
    	char texte[TAILLE_TEXTE];
    };
     
    struct msg_resultat {
    	char resultat[TAILLE_TEXTE - TAILLE_RESULTAT];
    	char vide[TAILLE_TEXTE - TAILLE_RESULTAT];
    };
     
    struct msg_erreur {
    	char texte[TAILLE_TEXTE];
    };
     
    struct msg_generic {
    	char id_client[TAILLE_ID_CLIENT];
    	int type_msg;
    	union corps_msg {
    		struct msg_requete requete;
    		struct msg_reponse reponse;
    		struct msg_test_texte test_texte;
    		struct msg_resultat resultat_test;
    		struct msg_erreur erreur;
    	} corps;
    } message;
    Par exemple, si je veux acceder à la lettre (partie msg_reponse) de l'uion corps_msg d'un message générique, comment dois-je m'y prendre?

  2. #2
    Membre émérite
    Avatar de Pouet_forever
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    671
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 671
    Par défaut
    Un exemple vaut mieux qu'un long discours :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    int main(void) {
    	struct msg_generic msg;
    	msg.corps.reponse.lettre = 'A';
    	return 0;
    }

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    46
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2005
    Messages : 46
    Par défaut
    Sa marche effectivement, je te remercie.

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

Discussions similaires

  1. Structure et Union
    Par Ryu2000 dans le forum Débuter
    Réponses: 2
    Dernier message: 12/02/2013, 11h27
  2. structures et unions ?
    Par jbarreau-mainson dans le forum Débuter
    Réponses: 13
    Dernier message: 10/01/2009, 16h02
  3. structure, union et énumération
    Par ngalla dans le forum C
    Réponses: 3
    Dernier message: 14/03/2007, 10h34
  4. Structure, union et pointeur
    Par kikoo.plop dans le forum C
    Réponses: 10
    Dernier message: 18/12/2006, 19h21
  5. union de structure syntaxe
    Par al974 dans le forum C
    Réponses: 6
    Dernier message: 29/07/2006, 13h56

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