Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Dynamisches Array of Array of Char! Wie ändere ich die Größe
Larus - So 15.05.05 12:19
Titel: Dynamisches Array of Array of Char! Wie ändere ich die Größe
Wie der Titel schon sagt! Ich habe eine arrayvariable die wie folgt aussieht:
Delphi-Quelltext
1:
| Text2: Array of Array of Char; |
Das Problem ist beide Arrays müssen variabel sein ! Ich kann sie nicht wie folgt festlegen:
Delphi-Quelltext
1:
| Text2: Array [0..5] of Array [0..40] of Char; |
weil ich sie ändern können muss z.B. auf:
Delphi-Quelltext
1:
| Text2: Array [0..3] of Array [0..99] of Char; |
Wie das bei einem einzelnen Array geht weiß ich ja:
nur wie geht das, dass ich alles ändern kann?
Moderiert von
raziel: Code- durch Delphi-Tags ersetzt.Moderiert von
Christian S.: Topic aus Algorithmen, Optimierung und Assembler verschoben am So 15.05.2005 um 12:33
Muetze1 - So 15.05.05 12:43
Moin!
1. Manche Delphiversionen können es schon so:
SetLength(arr, 10, 20);
2. Ältere nicht - bzw. wenn du in der 2. Dimension unterschiedliche Längen haben willst, dann so:
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7:
| Var i : Integer; Begin SetLength(arr, 10); For i := Low(arr) To High(Arr) Do SetLength(arr[i], 20); End; |
In beiden Beispielen hast du in der 1. Dimension 10 Elemente und in der 2. Dimension jeweils 20 Elemente...
MfG
Muetze1
Larus - So 15.05.05 12:56
besten dank ich werde es mal ausprobieren! Ich verwende Delphi 7 und benötige für den zweiten array keine unterschiedlichen dimensionen
AXMD - So 15.05.05 13:09
Larus hat folgendes geschrieben: |
besten dank ich werde es mal ausprobieren! Ich verwende Delphi 7 und benötige für den zweiten array keine unterschiedlichen dimensionen |
Darf ich fragen, warum du es dann dynamisch deklarierst :gruebel:?
AXMD
Allesquarks - So 15.05.05 16:36
Wieso verwendest Du nicht wenigstens für das array of character strings. Dies sind schon von Delphi dynamisch verwaltet. Du kannst auf jeden Fall jede Spalte einzeln dynamisch verändern (ungefähr so setlength(myarray,10,neuelänge)). So wurde die zehnte Spalte gändert. Delphi akzeptiert aber auch für die Spalte eine Variable, so dass du zur Not mit einer Schleife die Länge deines übergeordneten Arrays zur Gänze einheitlich verändern kannst.
Larus - So 15.05.05 18:31
ok falsch rübergekommen! Ich meine das so: Ich muss jetzt nich bei Text2[2,...] die Möglichkeit haben eine andere Länge für ... zu haben als bei Text2[3,...]! Hat sich aber auch schon erledigt! Habs nur mit einem String gemacht!
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!