Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - High bei mehrdimensionalen Arrays
J.Borchert - Fr 06.01.12 18:44
Titel: High bei mehrdimensionalen Arrays
Ich weiß nicht, wie ich die Länge oder High der Dimensionen eines mehrdimensionalen Arrays abfrage:
setlength(a, 6, 4); // 1.Dimension = 6 lang, 2.Dimension = 4 lang
012345
abcdef
ghijkl
mnopqr
bezieht sich jetzt length(a[0]) auf die erste oder zweite Dimension und wie frage ich die Länge der anderen Dimension ab?
Moderiert von
Narses: Topic aus Sonstiges (Delphi) verschoben am Sa 07.01.2012 um 12:11
Xion - Fr 06.01.12 20:03
Na dein Beispiel simmt ja garnicht.
Wenn es ein
array [0..5] of array [0..3] of char ist z.B. dann wären es 6 Wörter mit je 4 Zeichen (nicht umgekehrt).
Die Länge der ersten Dimension kriegst du ganz normal mit Length:
Delphi-Quelltext
1: 2:
| if Length(A)<>6 then |
Die zweite Dimension kannst du so auslesen:
Delphi-Quelltext
1: 2:
| if Length(A[0])<>4 then |
Der Grund dafür ist, dass du die zweite Dimension auch verschieden machen kannst. Beispiel:
Delphi-Quelltext
1: 2: 3:
| SetLength(A,10); for B:= 0 to High(A) do SetLength(A[B],B); |
In diesem Fall ist jedes der arrays (zweite Dimension) verschieden lang.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2025 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!