Arrays C – einfach erklärt für dein Informatik-Studium (2024)

Video anzeigen

zur Videoseite: Arrays

Du möchtest wissen, wie du Arrays in C programmieren kannst? Im Folgenden zeigen wir dir, wie das Ganze funktioniert.

Inhaltsübersicht

Arrays C – Was sind Arrays?

im Videozur Stelle im Video springen

(00:14)

Damit du diese praktischen Helfer verwenden kannst, musst du erst einmal wissen, was Arrays oder Felder, wie sie zu Deutsch genannt werden, sind. Im Grunde genommen hat ein Feld nicht viel mit Arrays zu tun.

Arrays C – einfach erklärt für dein Informatik-Studium (1)

direkt ins Video springen

Solange wir uns auf die eindimensionalen Arrays beschränken, kannst du sie dir eher vorstellen, wie eine nummerierte Tabelle. Wir haben eine bestimmte Anzahl an Feldern, denen wir eine Nummer zuordnen. Diese Felder müssen alle vom selben Datentyp sein. Diesen Datentyp weist dann auch das Array selbst auf.

Programmieren von Arrays

im Videozur Stelle im Video springen

(00:49)

Deklariert wird ein Array so:

type array_name [number_of_components];

Der Datentyp bildet den Anfang. Gleich danach geben wir unserer Liste einen Namen, damit wir in unserem Stapel von Blättern auch noch die richtige Liste finden. Außerdem müssen wir noch die Menge der maximal speicherbaren Komponenten angeben.

Das ist logisch. Schließlich gibt es nur begrenzt Platz auf einem Blatt Papier, und mit Speicher verhält es sich nicht anders. Der Compiler muss nämlich wissen, wie viel Speicher er für unser Array reservieren muss. Wenn er das tut, nutzt er auch unseren Array-Namen. Um den Anfang unseres Feldes finden zu können, speichert er in diese Konstante nämlich die Adresse der ersten Speicherzelle, die reserviert wird.

Werte aufrufen

im Videozur Stelle im Video springen

(01:36)

Das ist ja schön und gut, aber mit einer leeren Tabelle können wir erst einmal nicht viel anfangen. Wie speichern wir also Werte hinein? Gibst du den Arraynamen mit einer normalen Wertzuweisung an, erhältst du einen Fehler im Programm, da du die Speicheradresse deines Arrays bearbeitest, nicht die gespeicherten Komponenten. Um an die Werte unseres Arrays zu kommen, müssen wir jedes „Tabellen-Feld“ einzeln ansprechen. Das können wir mittels eines Index. Mit:

array_name [i] = 1;

können wir also auf den Listen-Eintrag Nummer i-1 zugreifen. Aber warum i-1? Das liegt daran, dass der erste Wert unseres Feldes in array_name[0] gespeichert wird. Der Rest der reservierten Speicherzellen liegt direkt dahinter.

Arrays C – einfach erklärt für dein Informatik-Studium (3)

direkt ins Video springen

Willst du jetzt beim Initialisieren nicht wieder genau so viel Arbeit wie vorher haben, indem du jeden Wert einzeln zuweist, kannst du – wenn auch nur bei der Initialisierung – auf diesen Befehl zurückgreifen:

int array_name [3] = (50, 95, 7);

Arrays C – einfach erklärt für dein Informatik-Studium (4)

direkt ins Video springen

Damit werden die Werte des Arrays von links nach rechts mit den angegebenen Werten aufgefüllt.

Ausnahmen

im Videozur Stelle im Video springen

(02:39)

Wie immer gibt es natürlich eine Ausnahme zu dieser Regel. In diesem Fall sind das die Arrays vom Typ char. Bei „normalen“ Arrays musst du nur aufpassen, dass du nicht aus Versehen auf eine Speicheradresse außerhalb des, für dein Feld reservierten, Speichers zugreifst. Im Gegensatz zu den meisten möglichen Fehlern in C gibt der Compiler hier nämlich keinen Fehler aus. Das heißt aber nicht, dass du damit keinen Schaden anrichtest.

Im Gegenteil – du manipulierst die Werte einer Speicherzelle, die für etwas ganz Anderes gedacht war. Dadurch kannst du unter Umständen sogar ein ganzes Programm zum Absturz bringen.

Nun kannst du also Arrays innerhalb der main-Methode verwenden, aber was, wenn du sie an eine andere Funktion übergeben willst? Das ist ganz einfach, denn du musst weder beim Funktionsaufruf, noch im Funktionskopf der Methode die Größe deines Arrays angeben. Allerdings musst du die Länge deines Feldes dadurch als extra Parameter angeben, wenn sie gebraucht wird.

Beliebte Inhalte aus dem BereichProgrammieren in C

  • StringsDauer:03:06
  • Variablen vertiefend IDauer:04:03
  • Variablen vertiefend IIDauer:05:03

Weitere Inhalte:Programmieren in C

C vertiefend

Intro C vertiefendDauer:00:57
Ungültige Eingaben - FehlerbehandlungDauer:03:30
Datentypen - Speicherbedarf und TypumwandlungDauer:05:01
ArraysDauer:03:51
StringsDauer:03:06
Variablen vertiefend IDauer:04:03
Variablen vertiefend IIDauer:05:03
Arrays C – einfach erklärt für dein Informatik-Studium (2024)

References

Top Articles
Latest Posts
Article information

Author: Barbera Armstrong

Last Updated:

Views: 6343

Rating: 4.9 / 5 (79 voted)

Reviews: 94% of readers found this page helpful

Author information

Name: Barbera Armstrong

Birthday: 1992-09-12

Address: Suite 993 99852 Daugherty Causeway, Ritchiehaven, VT 49630

Phone: +5026838435397

Job: National Engineer

Hobby: Listening to music, Board games, Photography, Ice skating, LARPing, Kite flying, Rugby

Introduction: My name is Barbera Armstrong, I am a lovely, delightful, cooperative, funny, enchanting, vivacious, tender person who loves writing and wants to share my knowledge and understanding with you.