![]() |
Länge eines Array of array ermitteln
Hallo Zusammen,
vielleicht stelle ich hier jetzt eine doofe Frage, aber ich habe nichts passendes gefunden. Ich habe eine Repeat oder auch (wahlweise) eine While Schleife, in der ein Counter hochgezählt wird. Da es in den Schleifen um die Überprüfung und Verarbeitung von Datensätzen aus einem Array geht, muss ich ja einen Schutz einbauen, damit ich nicht über die Länge des Arrays hinauslaufe. bei einer For-Schleife ist das angenehm über Length(Array) zu lösen. Die kommt hier aber nicht in Frage. Leider funktioniert es nicht, wenn ich Length(Array) mit einem Integer vergleichen möchte - wie zum Beispiel repeat xxx xxx xxx until k=Length(Array) Ich könnte jetzt im Vorfeld einen separaten Counter mit einer For-Schleife auf den Wert der Länge des Arrays bringen, was natürlich extrem unschön ist. Habt Ihr eine Idee, wie ich die Länge eines Arrays mit einem Integer-Wert vergleichen kann? Vielen Dank im Voraus |
Re: Länge eines Array of array ermitteln
"funktioniert nicht" ist keine Fehlerbeschreibung!
Denn es funktioniert und man kann Length mit einem Integer vergleichen, denn Length liefert selber einen Integer zurück. Was geht nicht, also wass passiert und was willst du stattdessen erreichen? PS: um die Länge eines "Subarrays" zu erhalten, solltest du dieses auch angeben Length(arr) = Länge der ersten Ebene Length(arr[3]) ? Länge des Subarrays von Index 3 |
Re: Länge eines Array of array ermitteln
Zitat:
Das, und alles andere hat himi schon gesagt, aber der musste einfach nochmal raus *hutrandkau* |
Re: Länge eines Array of array ermitteln
Hallo himitsu,
ja, die Fehlerbeschreibung fehlt! SORRY!!! Wenn ich einen Haltepunkt einfüge, kann ich mir nicht den Wert von Length(Arry[0]) anzeigen lassen. Der Wert beträgt aber z.B. 100 Datensätze (Ich würde mir also wünschen, dass ich den Wert "100" ausgewiesen bekomme) Warum? Und wenn ich einen Counter habe, der schön hochgezählt wird, dann hat er irgendwann (wenn nicht vorher eine IF-Anweisung oder ein anderes Kriterium greift) den Wert "100" erreicht und die Schleife soll verlassen werden (statt einen Fehler zu erzeugen, weil in der If-Anweisung ein Wert, wie z.B. Array[0,Counter], nicht mehr vorhanden ist. Ich hoffe, dass das verständlich ist. Vielen Dank Ykcim P.S.: Danke für die schnelle Antwort zuvor! |
Re: Länge eines Array of array ermitteln
Delphi-Quellcode:
wird/ist "k" gesetzt?
{...}
until k=Length(Array); lass dir alternativ mal nach jedem reapeat in einem memo den status ausgeben. d.h.
Delphi-Quellcode:
i := 0;repeat
inc(i); Memo1.Lines.Add(IntToStr(k) + ' / ' + IntToStr(Length(Array[i]))); until k=Length(Array); |
Re: Länge eines Array of array ermitteln
Length ist 'ne Funktion und da funktioniert sowas halt nicht (immer).
trage Length(Array) in die "Liste der überwachten Ausdrücke" ein und aktiviere dafür das "Funktionsaufrufe gestatten" |
Re: Länge eines Array of array ermitteln
aktiviere dafür das "Funktionsaufrufe gestatten"
Wo und wie mache ich das? |
Re: Länge eines Array of array ermitteln
indem du den überwachten ausdruck bearbeitest?
(Strg+E oder über's Kontextmenü oder den Ausdruck doppelklicken) |
Re: Länge eines Array of array ermitteln
Das wusste ich nicht - DANKE!
AAber wie würdet Ihr denn mein Problem lösen? Ich bin ja sicher nicht der einzige, der mit Hilfe einer Repeat oder while Schleife versucht, ein Array zu be- verarbeiten... Danke Ykcim |
Re: Länge eines Array of array ermitteln
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:38 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz