Galileo Computing < openbook > Galileo Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

 << zurück
C von A bis Z von Jürgen Wolf
Das umfassende Handbuch für Linux, Unix und Windows
– 2., aktualisierte und erweiterte Auflage 2006
Buch: C von A bis Z

C von A bis Z
1.116 S., mit CD, Referenzkarte, 39,90 Euro
Galileo Computing
ISBN 3-89842-643-2
gp Kapitel 13 Arrays
  gp 13.1 Arrays deklarieren
  gp 13.2 Initialisierung und Zugriff auf Arrays
    gp 13.2.1 Gültigkeitsbereich von Arrays
  gp 13.3 Arrays vergleichen
  gp 13.4 Anzahl der Elemente eines Arrays ermitteln
  gp 13.5 Übergabe von Arrays an Funktionen
  gp 13.6 Arrays aus Funktionen zurückgeben
  gp 13.7 Programmbeispiel zu den Arrays
  gp 13.8 Einlesen von Array-Werten
  gp 13.9 Mehrdimensionale Arrays
  gp 13.10 Mehrdimensionale Arrays initialisieren
    gp 13.10.1 Tic Tac Toe
    gp 13.10.2 Dreidimensionale Arrays
  gp 13.11 Übergabe von zwei- bzw. mehrdimensionalen Arrays an Funktionen
  gp 13.12 Arrays in Tabellenkalkulation einlesen (*.CSV–Dateien)
  gp 13.13 Strings/Zeichenketten (char Array)
    gp 13.13.1 Vom String zur Binärzahl
  gp 13.14 Einlesen von Strings
  gp 13.15 Standard-Bibliothek <string.h>
    gp 13.15.1 strcat() – Strings aneinander hängen
    gp 13.15.2 strchr() – ein Zeichen im String suchen
    gp 13.15.3 strcmp() – Strings vergleichen
    gp 13.15.4 strcpy() – einen String kopieren
    gp 13.15.5 strcspn() – einen Teilstring ermitteln
    gp 13.15.6 strlen() – Länge eines Strings ermitteln
    gp 13.15.7 strncat() – String mit n Zeichen aneinander hängen
    gp 13.15.8 strncmp() – n Zeichen von zwei Strings miteinander vergleichen
    gp 13.15.9 strncpy() – String mit n Zeichen kopieren
    gp 13.15.10 strpbrk() – Auftreten bestimmter Zeichen suchen
    gp 13.15.11 strrchr() – das letzte Auftreten eines bestimmten Zeichens im String suchen
    gp 13.15.12 strspn() – erstes Auftreten eines Zeichens, das nicht vorkommt
    gp 13.15.13 strstr() – String nach Auftreten eines Teilstrings durchsuchen
    gp 13.15.14 strtok() – String anhand bestimmter Zeichen zerlegen

Kapitel 13 Arrays

Bisher wurden die speicherorientierten Strukturelemente auf einfache Datentypen beschränkt. Bei den Aufgaben wurden lediglich ganze Zahlen (char, short, int, long) bzw. Fließkommazahlen (float, double, long double) besprochen. In diesem Kapitel erfahren Sie nun etwas über zusammengesetzte Datenstrukturen, kurz Arrays.

Mit Arrays haben Sie die Möglichkeit, eine geordnete Folge von Werten eines bestimmten Typs abzuspeichern und zu bearbeiten. Arrays werden auch als Vektoren, Felder oder Reihungen bezeichnet.


Galileo Computing - Zum Seitenanfang

13.1 Arrays deklarieren  toptop

Die Syntax zur Deklaration eines Arrays sieht wie folgt aus:

Datentyp Arrayname[Anzahl_der_Elemente];

Als Datentyp geben Sie an, von welchem Datentyp die Elemente des Arrays sein sollen. Der Arrayname ist frei wählbar, mit denselben Einschränkungen für Bezeichner wie bei Variablen. Mit Anzahl_der_Elemente wird die Anzahl der Elemente angegeben, die im Array gespeichert werden können. Man spricht dabei auch vom Indexwert. Ein Array, bestehend aus Elementen unterschiedlicher Datentypen, gibt es in C nicht.

Angesprochen wird das gesamte Array mit allen Komponenten über den Arraynamen. Die einzelnen Elemente eines Arrays werden durch den Arraynamen und einen Indexwert (in eckigen Klammern) verwendet. Der Indexwert selbst wird über eine Ordinalzahl (Ganzzahl) angegeben und fängt bei Null an zu zählen. Anhand der folgenden Zeile wird ein Array jetzt näher untersucht:

int i[5];

Durch diese Deklaration wird Platz für fünf Variablen im Array i vom Datentyp int im Speicher reserviert. In diesem Array können somit fünf Integerwerte gespeichert werden (siehe Abbildung 13.1).

Wie Sie in der Abbildung sehen können, wurde ein Array vom Typ int deklariert. Mit dieser Deklaration wurde automatisch auch Speicherplatz für fünf int-Werte reserviert. Bei vier Bytes für eine int-Variable (je nach System) würden 20 Bytes im Arbeitsspeicher des Rechners belegt werden. Demnach benötigt ein Array wie z.B. double abc[2000] 16000 Bytes. Alte C-Compiler hatten mit großen Arrays Probleme bei der Speicherverwaltung, da der Speicher auf 64 KB beschränkt war. (Es gab natürlich Tricks, diese Schwierigkeiten zu umgehen, darauf soll hier aber nicht näher eingegangen werden.) Bei modernen 32-Bit-Compilern dürften Sie in der Praxis wohl nie an irgendwelche Grenzen stoßen.

Abbildung
Hier klicken, um das Bild zu Vergrößern

Abbildung 13.1   Anordnung eines Arrays mit fünf Werten


Merke   Die Größe eines Arrays muss zum Zeitpunkt der Übersetzung in der Regel bekannt sein. In C gibt es keine wachsenden Arrays. Natürlich gibt es auch hierzu wieder die Ausnahme von der Regel. Näheres dazu in Kapitel 14, Zeiger (Pointer).


 << zurück
  
  Zum Katalog
Zum Katalog: C von A bis Z
C von A bis Z
bestellen
 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchtipps
Zum Katalog: Shell-Programmierung






 Shell-Programmierung


Zum Katalog: Linux-UNIX-Programmierung






 Linux-UNIX-Programmierung


Zum Katalog: C/C++






 C/C++


Zum Katalog: UML 2.0






 UML 2.0


Zum Katalog: Reguläre Ausdrücke






 Reguläre Ausdrücke


Zum Katalog: Linux






 Linux


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo





Copyright © Galileo Press 2006
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Galileo Computing]

Galileo Press, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, info@galileo-press.de