Industriële fabricage
Industrieel internet der dingen | Industriële materialen | Onderhoud en reparatie van apparatuur | Industriële programmering |
home  MfgRobots >> Industriële fabricage >  >> Industrial programming >> C Taal

C opsommingen

C enums

In deze tutorial leer je met behulp van voorbeelden over enum (enumeratie) in C-programmering.

In C-programmering is een opsommingstype (ook wel enum genoemd) een gegevenstype dat bestaat uit integrale constanten. Om opsommingen te definiëren, gebruikt de enum zoekwoord wordt gebruikt.

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

Standaard const1 is 0, const2 is 1 enzovoort. U kunt de standaardwaarden van enum-elementen tijdens het declareren wijzigen (indien nodig).

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

Aangifte van opgesomd type

Wanneer u een enum-type definieert, wordt de blauwdruk voor de variabele gemaakt. Hier leest u hoe u variabelen van enum-types kunt maken.

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

Hier een variabele check van het type enum boolean is gemaakt.

Je kunt enum-variabelen ook op deze manier declareren.

enum boolean {false, true} check;

Hier de waarde van false is gelijk aan 0 en de waarde van true is gelijk aan 1.


Voorbeeld:Opsommingstype

#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;
}

Uitvoer

Day 4

Waarom worden opsommingen gebruikt?

Een enum-variabele kan slechts één waarde hebben. Hier is een voorbeeld om het te demonstreren,

#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;
}

Uitvoer

Size of enum variable = 4 bytes

Hier krijgen we 4 omdat de grootte van int is 4 bytes.

Dit maakt enum een ​​goede keuze om met vlaggen te werken.


Hoe gebruik je opsommingen voor vlaggen?

Laten we een voorbeeld nemen,

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

Stel dat u een knop ontwerpt voor een Windows-toepassing. U kunt vlaggen instellen ITALICS , VET en ONDERSTREEP om met tekst te werken.

Er is een reden waarom alle integrale constanten een macht van 2 zijn in de bovenstaande pseudocode.

// In binary

ITALICS = 00000001
BOLD = 00000010
UNDERLINE = 00000100 

Omdat de integrale constanten een macht van 2 zijn, kun je twee of meer vlaggen tegelijk combineren zonder elkaar te overlappen met bitsgewijze OR | exploitant. Hierdoor kunt u twee of meer vlaggen tegelijk kiezen. Bijvoorbeeld,

#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;
}

Uitvoer

5

Als de output 5 is, weet je altijd dat vet en onderstreept wordt gebruikt.

U kunt ook vlaggen toevoegen volgens uw vereisten.

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

Hier hebben we cursief toegevoegd aan ons ontwerp. Let op, alleen code voor cursief wordt geschreven binnen de if verklaring.

Je kunt bijna alles bereiken in C-programmering zonder opsommingen te gebruiken. Ze kunnen echter in bepaalde situaties erg handig zijn.


C Taal

  1. C# Hello World - Uw eerste C#-programma
  2. C#-zoekwoorden en -ID's
  3. C#-variabelen en (primitieve) gegevenstypen
  4. C#-operators
  5. C# Bitsgewijze en Bit Shift-operators
  6. C# Basisinvoer en -uitvoer
  7. C#-expressies, statements en blokken (met voorbeelden)
  8. C# Opmerkingen
  9. C# switch-instructie
  10. C# ternair (? :) Operator
  11. C# break-instructie