3.2 Arrays (Tabellen) und Strukturen (Datenstrukturen)
Ein Array (oder eine Tabelle, manchmal auch ein Feld) ist ein zusammenhängender Speicherbereich, der aus gleich langen und gleich organisierten Datenfeldern gleichen Datentyps besteht.
Diese Datenfelder bezeichnet man als Array-Elemente (oder kurz: Elemente).
Jedem Element kann eindeutig eine fortlaufende Nummer zugeordnet werden. Diese Nummer wird Index genannt.
Ein Array-Element hat keinen eigenen Namen, sondern nur einen eindeutigen Index. Der Name des Arrays und der Index eines Elements identifizieren somit eindeutig ein Array-Element.
Das erste Element eines Arrays hat im Allg. den Index 1 (in manchen Programmiersprachen beginnt der Index bei 0).
Eine Struktur (bzw. Datenstruktur) ist ein zusammenhängender Speicherbereich, der - im Gegensatz zum Array - aus beliebigen Datenfeldern unterschiedlichsten Datentyps besteht.
Jedes Strukturelement hat einen - innerhalb der Struktur eindeutigen - Namen, der sich vom Namen der Struktur selbst unterscheiden muss. Der Name der Struktur und der Name eines Elements identifizieren somit eindeutig ein Strukturelement. (In manchen Programmiersprachen kann der Strukturname weggelassen werden, wenn der Elementname auch außerhalb der Struktur eindeutig ist.)
Ein Strukturelement kann selbst wieder eine Struktur sein (Unterstruktur).
Definition eines eindimensionalen Arrays:
PL/I | DCL arrayname (anzahl) datentyp; |
---|---|
Cobol |
01 array. 05 arrayname datentyp OCCURS anzahl INDEXED BY index. |
C/C++ | datentyp arrayname [anzahl]; |
/370-Assembler | arrayname DS anzahlCLlaenge |
Ansprechen eines Array-Elements:
PL/I | arrayname(index) |
---|---|
Cobol | arrayname(index) |
C/C++ | arrayname[index-1] (Das erste Element hat in C/C++ immer den Index 0!) |
/370-Assembler | Ein Array-Element kann nicht direkt angesprochen werden! Es muss die Adresse des Elements berechnet und in einem Register bereitgestellt werden. Erst danach kann mit Hilfe dieses Adressregisters auf das Element zugegriffen werden. |
Definition einer einfachen Struktur:
PL/I |
DCL 1 strukturname, 2 elementname1 datentyp, ... , 2 elementnamen datentyp; | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Cobol |
01 strukturname. 05 elementname1 datentyp. ... . 05 elementnamen datentyp. | ||||||||||
C/C++ |
struct strukturdeklarationsname { datentyp elementname1; ... ; datentyp elementnamen; } strukturname; | ||||||||||
/370-Assembler |
|
Ansprechen eines Strukturelements:
PL/I | strukturname.elementnamei oder elementnamei |
---|---|
Cobol | elementnamei |
C/C++ | strukturname.elementnamei |
/370-Assembler | elementnamei |
- Weiter
- zum nächsten Kapitel
- Zurück
- zum vorherigen Kapitel
- zum Anfang dieses Kapitels
- zum Inhaltsverzeichnis
- zum Anfang dieses Kapitels