Langage c (enumeration)

Résolu
simyamsmasters Messages postés 48 Statut Membre -  
lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   -
Bonjour,

SVP jetter un coup d oeil a ce code

enum Statut
{
FAUX, VRAI
};

Est ce que l utilisateur peut attribuer a une variable de type Statut la valeur FAUX ou VRAI en tappant au clavier?
ou est ce que c est seulement le programmeur qui attribut en codant une valeur a la dite variable.

Parce que je ne comprend vraiment pas a quoi nous sert ce ( enum ). Merci de bien vouloir me repondre.

2 réponses

  1. lami20j Messages postés 21506 Date d'inscription   Statut Modérateur, Contributeur sécurité Dernière intervention   3 571
     
    Salut,

    Le type enum permet d'utiliser des constantes entiers nommées.
    Les noms des constantes cache la valeur numérique entière.
    lami20j@debian:~/trash/ccm_c$ cat ccm59_enum.c
    #include<stdio.h>
    
    int main()
    {
            enum Annee {janvier=1,fevrier, mars,
                        avril,    mai,     juin,
                        juillet,  aout,    septembre,
                        octobre,  novembre,decembre };
            enum Annee mois;
            char m[10];
    
            printf("janvier - %d\n",janvier);
            printf("juin - %d\n",juin);
    
            return 0;
    }
    lami20j@debian:~/trash/ccm_c$ gcc ccm59_enum.c
    lami20j@debian:~/trash/ccm_c$ ./a.out
    janvier - 1
    juin - 6
    lami20j@debian:~/trash/ccm_c$
    


    C'est un peu prés pareil comme avec #define, avec l'avantage de la génération automatique de valeurs.
    6
  2. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
     
    Salut,
    Voici un lien qui devrait répondre à tes questions : http://www.enseignement.polytechnique.fr/profs/informatique/Jean-Jacques.Levy/poly/mainB/node7.html
    Cdlt
    1