C Arrays meistern: Deklaration, Initialisierung und gängige Operationen
C Arrays meistern
Entdecken Sie, wie Sie C-Arrays deklarieren, initialisieren und manipulieren mit praktischen Beispielen, Best-Practice-Tipps und Sicherheitsrichtlinien.

In C ist ein Array ein zusammenhängender Speicherblock, der mehrere Werte desselben Typs speichert. Um beispielsweise 100 Ganzzahlen zu halten, würden Sie schreiben:
int data[100];
Array deklarieren
Verwenden Sie die Syntax:
dataType arrayName[arraySize];
Beispiel:
float mark[5];
Hier kann mark fünf float Werte speichern. Beachten Sie, dass Größe und Typ nach der Deklaration festgelegt sind.
Elemente zugreifen
Array-Indizes beginnen bei 0. Für ein Array der Größe n ist das letzte Element array[n-1]. Beispiel:
mark[0] // erstes Element mark[4] // letztes Element für Größe 5

Wichtige Punkte:
- Erster Index ist 0, nicht 1.
- Für
float(4 Bytes) erhöht jeder nachfolgende Index die Adresse um 4. - Nie über
array[n-1]hinaus zugreifen, um undefiniertes Verhalten zu vermeiden.
Array initialisieren
Bei der Deklaration initialisieren:
int mark[5] = {19, 10, 8, 17, 9};
Oder lassen Sie den Compiler die Größe ableiten:
int mark[] = {19, 10, 8, 17, 9};
Resultierende Werte:
mark[0] = 19 mark[1] = 10 mark[2] = 8 mark[3] = 17 mark[4] = 9

Elemente modifizieren
int mark[5] = {19, 10, 8, 17, 9}; mark[2] = -1; // drittes Element mark[4] = 0; // fünftes Element
Ein- & Ausgabe
Einlesen in ein Array-Element:
scanf("%d", &mark[2]); // drittes Element scanf("%d", &mark[i-1]); // i-tes Element (1-basiert)
Element ausgeben:
printf("%d", mark[0]); // erstes printf("%d", mark[2]); // drittes printf("%d", mark[i-1]); // i-tes
Beispiel 1: Array Ein-/Ausgabe
#include <stdio.h> int main() { int values[5]; printf("5 Ganzzahlen eingeben: "); for (int i = 0; i < 5; ++i) { scanf("%d", &values[i]); } printf("Ganze Zahlen anzeigen:\n"); for (int i = 0; i < 5; ++i) { printf("%d\n", values[i]); } return 0; }
Ausgabe
5 Ganzzahlen eingeben: 1 -3 34 0 3 Ganze Zahlen anzeigen: 1 -3 34 0 3
Beispiel 2: Durchschnitt berechnen
#include <stdio.h> int main() { int marks[10], n, sum = 0; printf("Anzahl Elemente eingeben: "); scanf("%d", &n); for (int i = 0; i < n; ++i) { printf("Zahl%d eingeben: ", i + 1); scanf("%d", &marks[i]); sum += marks[i]; } int average = sum / n; printf("Durchschnitt = %d", average); return 0; }
Ausgabe
Anzahl Elemente eingeben: 5 Zahl1 eingeben: 45 Zahl2 eingeben: 35 Zahl3 eingeben: 38 Zahl4 eingeben: 31 Zahl5 eingeben: 49 Durchschnitt = 39
Vorsicht vor Out-of-Bounds Zugriff
Der Zugriff auf testArray[12], wenn das Array nur 10 Elemente hat, führt zu undefiniertem Verhalten – Abstürze, korrupte Daten oder stille Fehler. Validieren Sie Indizes immer vor dem Zugriff.
Mehrdimensionale Arrays
Bisher haben wir eindimensionale Arrays behandelt. Im nächsten Tutorial werden wir mehrdimensionale Arrays (Arrays von Arrays) erkunden und wie man sie effektiv einsetzt.
C Sprache
- C# Arrays meistern: Deklaration, Initialisierung und Operationen
- C# Jagged Arrays meistern: Deklaration, Initialisierung und Zugriff
- Arrays an Funktionen in C++ übergeben: Ein praktischer Leitfaden
- Arrays an Funktionen in C übergeben: 1D & 2D – Praxisleitfaden
- Beziehung zwischen Arrays und Zeigern in C verstehen
- Java Array-Kopiertechniken: Umfassender Leitfaden
- C++ Arrays verstehen: Deklaration, Initialisierung und Pointer‑Techniken
- C++ Dynamische Array‑Allokation: Praktischer Leitfaden mit Code‑Beispielen
- Java Arrays Tutorial: Deklaration, Erstellung und Initialisierung – Beispielcode
- MATLAB: Mehrdimensionale und spezielle Arrays meistern