Sign in Join
Wiki copytemporary

Array/de: what changed

Revision 1 to 2. Removed lines have a minus sign; added lines have a plus sign.

OldNewLine
1-\
21Zurück zu den [[Data type/de|Datentypen]].\
32Zurück zu den [[Reserved words/de|reservierten Wörtern]].\
4-\
3+
54=Eigenschaften von Arrays=
65
76- Ein Array ist eine Gruppe von Datenfeldern desselben Datentyps.\
87- Ein Array kann aus allen einfachen Datentypen sowie aus Records und Klassen gebildet werden.\
98- Es gibt zwei Typen von Arrays:\
109 * eindimensionale Arrays\
1110 * mehrdimensionale Arrays\
1211
13-\
1412=Eindimensionale Arrays=
1513
1614## Eigenschaften von eindimensionalen Arrays
1715
1816- Ein eindimensionales Array hat immer nur eine Dimension.\
1917- Ein Element des eindimensionalen Arrays wird mit dem Namen des Arrays und der Position im eindimensionalen Array angesprochen.\
2018 * Beispiel: Arrayname\[Position\]\
2119
22-\
2320==Statisches eindimensionales Array (=Array mit fester Größe)==
2421
2522``` pascal
2623var
2724 arrInt1: array[0..2] of Integer; // Das statische Array besteht aus 3 Elementen
2825 arrInt2: array[1..3] of Integer; // Das statische Array besteht aus 3 Elementen
2926 arrInt3: array[8..10] of Integer; // Das statische Array besteht aus 3 Elementen
3027```
3128
32-\
3329Grafische Darstellung des Arrays arrInt1:\
3430_____________________________________\
3531\| 0 \| 1 \| 2 \|\
36-\
32+
3733Grafische Darstellung des Arrays arrInt2:\
3834_____________________________________\
3935\| 1 \| 2 \| 3 \|\
40-\
36+
4137Grafische Darstellung des Arrays arrInt3:\
4238_____________________________________\
4339\| 8 \| 9 \| 10 \|\
44-\
4540
4641## Statische Array als Konstante
4742
4843Man kann bei einer statischen auch Anfangswerte mitgeben (Konstante).
4944
5045``` pascal
5146const
5247 arr0: array[0..3] of integer = (1, 2, 3, 4);
5348```
5449
5550==Dynamisches eindimensionales Array (=Array mit veränderlicher Größe)==
5651
5752``` pascal
5853var
5954 arrInt: array of integer; // Das dynamische Array besteht aus 0 Elementen
6055begin
6156 SetLength(arrInt, 20); // Das Array wird auf eine Größe von 20 Elementen geändert
6257 SetLength(arrInt, 0) // Das Array wird auf eine Größe von 0 Elementen geändert
6358end;
6459```
6560
66-\
67-
6861### Zur Laufzeit initialisieren
6962
7063``` pascal
7164type
7265 TBA = array of byte;
7366var
7467 BA: TBA;
7568
7669begin
7770 BA := TBA.Create(5, 2, 3, 4, 1);
7871
7972 WriteLn(Length(BA)); // --> 5
8073 WriteLn(BA[2]); // --> 3
8174```
8275
83-\
84-
8576# Mehrdimensionale Arrays
8677
8778## Eigenschaften von Mehrdimensionalen Arrays
8879
8980- Ein mehrdimensionales Array kann beliebig viele Dimensionen haben.\
9081- Ein Element des mehrdimensionalen Arrays wird mit dem Namen des Arrays und der Position im mehrdimensionalen Array angesprochen.\
9182 * Beispiel: Arrayname\[PositionDimension1, PositionDimension2, PositionDimension...\]\
9283
93-\
9484==Statisches Mehrdimensionales Array (=Array mit fester Größe)== Als Beispiel dient ein zweidimensionales Array:\
9585
9686``` pascal
9787Var
9888 arrInt1: array[0..5, 0..2] of Integer; // Das statische Array besteht aus 6 Elementen von denen jedes 3 weitere Elemente enthält.
9989 arrInt2: array[4..9, 6..8] of Integer; // Das statische Array besteht aus 6 Elementen von denen jedes 3 weitere Elemente enthält.
10090```
10191
102-\
10392Grafische Darstellung des Arrays arrInt1:\
10493_________________________________________________________________________\
10594\| 0 \| 1 \| 2 \| 3 \| 4 \| 5 \|\
10695_________________________________________________________________________\
10796\| 0 \| 1 \| 2 \| 0 \| 1 \| 2 \| 0 \| 1 \| 2 \| 0 \| 1 \| 2 \| 0 \| 1 \| 2 \| 0 \| 1 \| 2 \|\
108-\
97+
10998Grafische Darstellung des Arrays arrInt2:\
11099_________________________________________________________________________\
111100\| 4 \| 5 \| 6 \| 7 \| 8 \| 9 \|\
112101_________________________________________________________________________\
113102\| 6 \| 7 \| 8 \| 6 \| 7 \| 8 \| 6 \| 7 \| 8 \| 6 \| 7 \| 8 \| 6 \| 7 \| 8 \| 6 \| 7 \| 8 \|\
114-\
115103
116104## Statische Array als Konstante
117105
118106Man kann bei einer statischen auch Anfangswerte mitgeben (Konstante).
119107
120108``` pascal
121109const
122110 arr1: array[0..1, 0..3] of integer = ((1, 2, 3, 4), (5, 6, 7, 8));
123111```
124112
125113==Dynamisches mehrdimensionales Array (=Array mit veränderlicher Größe)==
126114
127115### Eine Dimension hat eine feste Größe
128116
129117Als Beispiel dient ein zweidimensionales Array:\
130118
131119``` pascal
132120var
133121 arrInt: array of array[0..1] of integer; // Erstellt ein zweidimensionales Array bei dem für die erste Dimension keine Elemente angegeben sind.
134122begin
135123 SetLength(arrInt, 5); // legt für erste Dimension eine Menge von 5 Elementen fest
136124end;
137125```
138126
139-\
140-
141127### Keine Dimension hat eine feste Größe
142128
143129Als Beispiel dient ein zweidimensionales Array:\
144130
145131``` pascal
146132var
147133 arrInt: array of array of Integer; // Erstellt ein zweidimensionales Array bei dem für die erste und die zweite Dimension keine Elemente angegeben sind.
148134 // Für jedes Element der ersten Dimension kann für die zweite Dimension eine individuelle Anzahl von Elementen angegeben werden.
149135
150136begin
151137 SetLength(arrInt, 5); // legt für erste Dimension eine Menge von 5 Elementen fest
152138 SetLength(arrInt[0], 7); // legt für die zweite Dimension des ersten Elements eine Menge von 7 Elementen fest
153139 SetLength(arrInt[1], 4); // legt für die zweite Dimension des zweiten Elements eine Menge von 4 Elementen fest
154140 // usw.
155141end;
156142```
157143
158-\
159-\
160144--Olaf 17:47, 19 October 2012 (UTC)
161145
162146---
163147*From the Free Pascal wiki, page "Array/de", as it stood on 2019-12-23 after a change by Trev, out of the wiki's dump of 2024-05-26. Copyright stays with the author who wrote it, according to the old wiki's [[Licensing]] page. If you have concerns about this material, [message the admin](/wiki-contact).*
164148Category: Reserved words/de

Back to history