Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial programming >> Langue C

C enums

C enums

Dans ce didacticiel, vous découvrirez enum (énumération) en programmation C à l'aide d'exemples.

En programmation C, un type d'énumération (également appelé enum) est un type de données composé de constantes intégrales. Pour définir des énumérations, le enum mot-clé est utilisé.

enum flag {const1, const2, ..., constN};

Par défaut, const1 est 0, const2 est 1 et ainsi de suite. Vous pouvez modifier les valeurs par défaut des éléments enum lors de la déclaration (si nécessaire).

// Changing default values of enum constants
enum suit {
    club = 0,
    diamonds = 10,
    hearts = 20,
    spades = 3,
};

Déclaration de type énuméré

Lorsque vous définissez un type d'énumération, le plan de la variable est créé. Voici comment vous pouvez créer des variables de types enum.

enum boolean {false, true};
enum boolean check; // declaring an enum variable

Ici, une variable check du type enum boolean est créé.

Vous pouvez également déclarer des variables enum comme celle-ci.

enum boolean {false, true} check;

Ici, la valeur de false est égal à 0 et la valeur de true est égal à 1.

Exemple :Type d'énumération

#include <stdio.h>

enum week {Sunday, Monday, Tuesday, Wednesday, Thursday, Friday, Saturday};

int main()
{
    // creating today variable of enum week type
    enum week today;
    today = Wednesday;
    printf("Day %d",today+1);
    return 0;
}

Sortie

Day 4

Pourquoi les énumérations sont-elles utilisées ?

Une variable d'énumération ne peut prendre qu'une seule valeur. Voici un exemple pour le démontrer,

#include <stdio.h>

enum suit {
    club = 0,
    diamonds = 10,
    hearts = 20,
    spades = 3
} card;

int main() 
{
    card = club;
	printf("Size of enum variable = %d bytes", sizeof(card));	
	return 0;
}

Sortie

Size of enum variable = 4 bytes

Ici, nous obtenons 4 car la taille de int est de 4 octets.

Cela fait de l'énumération un bon choix pour travailler avec des drapeaux.

Comment utiliser les énumérations pour les drapeaux ?

Prenons un exemple,

enum designFlags {
	ITALICS = 1,
	BOLD = 2,
	UNDERLINE = 4
} button;

Supposons que vous concevez un bouton pour une application Windows. Vous pouvez définir des drapeaux ITALICS , GRAS et SOULIGNER pour travailler avec du texte.

Il y a une raison pour laquelle toutes les constantes intégrales sont une puissance de 2 dans le pseudocode ci-dessus.

// In binary

ITALICS = 00000001
BOLD = 00000010
UNDERLINE = 00000100 

Étant donné que les constantes intégrales sont une puissance de 2, vous pouvez combiner deux drapeaux ou plus à la fois sans les chevaucher en utilisant OR | opérateur. Cela vous permet de choisir deux drapeaux ou plus à la fois. Par exemple,

#include <stdio.h>

enum designFlags {
	BOLD = 1,
	ITALICS = 2,
	UNDERLINE = 4
};

int main() {
	int myDesign = BOLD | UNDERLINE; 

        //    00000001
        //  | 00000100
        //  ___________
        //    00000101

	printf("%d", myDesign);

	return 0;
}

Sortie

5

Lorsque la sortie est 5, vous savez toujours que le gras et le soulignement sont utilisés.

De plus, vous pouvez ajouter des drapeaux selon vos besoins.

if (myDesign & ITALICS) {
    // code for italics
}

Ici, nous avons ajouté des italiques à notre conception. Remarque, seul le code pour les italiques est écrit à l'intérieur du if déclaration.

Vous pouvez accomplir presque n'importe quoi en programmation C sans utiliser d'énumérations. Cependant, ils peuvent être très utiles dans certaines situations.


Langue C

  1. C# Hello World - Votre premier programme C#
  2. Mots-clés et identifiants C#
  3. Variables C# et types de données (primitifs)
  4. Opérateurs C#
  5. Opérateurs de bits et de décalage de bits C#
  6. Entrée et sortie de base C#
  7. Expressions, instructions et blocs C# (avec exemples)
  8. Commentaires C#
  9. Instruction de commutateur C #