BESTE WEBSITE FÜR WEBENTWICKLER
C Sprache. W3Schools auf Deutsch. Unterricht für Anfänger

Ua En Es

C Aufzählung (enum)


C Aufzählungen

Eine Enum ist ein spezieller Typ, der eine Gruppe von Konstanten (unveränderlichen Werten) darstellt.

Um eine Aufzählung zu erstellen, verwenden Sie das Schlüsselwort enum, gefolgt vom Namen der Aufzählung, und trennen Sie die Aufzählungselemente durch ein Komma:

enum Level {
  LOW,
  MEDIUM,
  HIGH
};

Beachten Sie, dass für das letzte Element kein Komma erforderlich ist.

Die Verwendung von Großbuchstaben ist nicht erforderlich, wird jedoch häufig als bewährte Vorgehensweise angesehen.

Enum ist die Abkürzung für „enumerations“, was „spezifisch aufgelistet“ bedeutet.

Um auf die Enumeration zuzugreifen, müssen Sie eine Variable davon erstellen.

Geben Sie in der Methode main() das Schlüsselwort enum an, gefolgt vom Namen der Aufzählung (Level) und dann den Namen der Enum-Variablen (myVar in diesem Beispiel):

enum Level myVar;

Nachdem Sie nun eine Enum-Variable (myVar) erstellt haben, können Sie ihr einen Wert zuweisen.

Der zugewiesene Wert muss eines der Elemente innerhalb der Enumeration sein (LOW, MEDIUM oder HIGH):

enum Level myVar = MEDIUM;

Standardmäßig hat das erste Element (LOW) den Wert 0, das zweite (MEDIUM) hat den Wert 1 usw.

Wenn Sie jetzt versuchen, myVar zu drucken, wird 1 ausgegeben, was darstellt MEDIUM:

int main() {
  // Erstellen Sie eine Enum-Variable und weisen Sie ihr einen Wert zu
  enum Level myVar = MEDIUM;

  // Drucken Sie die Enum-Variable
  printf("%d", myVar);

  return 0;
}
Try it Yourself »

Werte ändern

Wie Sie wissen, hat das erste Element einer Aufzählung den Wert 0. Das zweite hat den Wert 1 und so weiter.

Um die Werte besser zu verstehen, können Sie sie einfach ändern:

enum Level {
  LOW = 25,
  MEDIUM = 50,
  HIGH = 75
};
printf("%d", myVar); // Jetzt ausgegeben 50
Try it Yourself »

Beachten Sie, dass die Nummern der nächsten Elemente entsprechend aktualisiert werden, wenn Sie einem bestimmten Element einen Wert zuweisen:

enum Level {
  LOW = 5,
  MEDIUM, // Jetzt 6
  HIGH // Jetzt 7
};
Try it Yourself »

Aufzählung in einer Switch-Anweisung

Enums werden häufig in Switch-Anweisungen verwendet, um nach entsprechenden Werten zu suchen:

enum Level {
  LOW = 1,
  MEDIUM,
  HIGH
};

int main() {
  enum Level myVar = MEDIUM;

  switch (myVar) {
    case 1:
      printf("Low Level");
      break;
    case 2:
      printf("Medium level");
      break;
    case 3:
      printf("High level");
      break;
  }
  return 0;
}
Try it Yourself »

Warum und wann sollten Aufzählungen verwendet werden?

Enums werden verwendet, um Konstanten Namen zu geben, was das Lesen und Verwalten des Codes erleichtert.

Verwenden Sie Aufzählungen, wenn Sie Werte haben, von denen Sie wissen, dass sie sich nicht ändern, z. B. Monatstage, Tage, Farben, Kartenstapel usw.