Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Felder (Arrays)

Felder sind Datenstrukturen, die dir erlauben, mehrere Werte mit dem gleichen Datentyp in einer Variable zu speichern.

Eigenschaften

  1. Ein Feld hat immer eine fixe Größe, die später nicht geändert werden kann.
  2. Alle Werte in einem Feld haben den gleichen Datentyp.
  3. Felder liegen lückenlos im Speicher.

Syntax

                        Initialisierung
                          ┌───────┐
   datentyp name[große] = {1, 2, 3};
   └──────────────────┘
       Deklaration

Die große ist die Anzahl von Elementen die in dem Feld passen sollen.

123

Zugriff && Zuweisung

name[index] = 18;    // Zuweisung
int a = name[index]; // Zugriff

Der index beginnt von 0 und gibt an, in welcher Position zugegriffen werden soll.

Index:012
Element:123

Initialisierung

…mittels schleifen

#define SIZE 5

int numbers[SIZE];

for (int i = 0; i < SIZE; i++) {
    numbers[i] = i + 1;
}

…mittels Initialisierungsblock

int numbers[5] = {1, 2, 3, 4, 5}; // => {1, 2, 3, 4, 5}
int numbers[5] = {0}; // => {0, 0, 0, 0, 0}
int numbers[5] = {1, 2, 3}; // => {1, 2, 3, 0, 0}
int numbers[5] = {1, 2, 3, 4, 5, 6}; // => ERROR, Funktioniert nicht, zu groß
int numbers[] = {1, 2, 3, 4, 5}; // => Compiler ermittelt Größe vom Wert der Variable

Ausgabe

#define SIZE 5

int numbers[SIZE] = {1, 2, 3, 4, 5};

for (int i = 0; i < SIZE; i++) {
    printf("%d ", numbers[i]); // 1 2 3 4 5
}