![]() |
Count Wert von Array
Hi :hi:
Könnte mir jemand sagen, wie ich die Anzahl der Zeilen, von einem Array auslesen kann ? |
Re: Count Wert von Array
Delphi-Quellcode:
Length(arrayxyz);
gruß |
Re: Count Wert von Array
Delphi-Quellcode:
:mrgreen:
High(Array)+1
//Edit: :oops: |
Re: Count Wert von Array
Falls das ernst gemeint war: Falsch! High() gibt den höchsten Index zurück, was bei einem dynamischen Array Anzahl der Elemente -1 ist!
|
Re: Count Wert von Array
:thumb: dank euch
lg Bundy |
Re: Count Wert von Array
hmm length :gruebel:
ich will aber nicht die länge des Strings im array , sondern die Anzahl der Strings im array |
Re: Count Wert von Array
length macht genau das
wenn du hast
Delphi-Quellcode:
var a:array of String;
i:Integer; begin .. i := length(a); // Anzahl der Strings in a // Für das Ablaufen des Arrays ist High aber besser da for i := 0 to High(a) do begin // Du kannst das -1 dann nie Vergessen. weil du das hier natürlich net brauchst :) .. end; |
Re: Count Wert von Array
Zitat:
Delphi-Quellcode:
var
strArr : array of string; // Stringlänge Length(strArr[<Item>]); // Arraylänge Length(strArr); |
Re: Count Wert von Array
Zitat:
|
Re: Count Wert von Array
Hallo,
wie aber bestimme ich die höchsten Indexe bei mehrdimensionalen Array? MFG Steffen |
Re: Count Wert von Array
Delphi-Quellcode:
var 2DStrArr: Array of Array of String;
begin // Der Linke Index 1. Dimension // Der Rechte Index 2. Dimension // 2DStrArr[0][0] // Höchster Index der 1. Dimension High(2DStrArr); // Höchster Index der 2. Dimension High(2DStrArr[0]); end; |
Re: Count Wert von Array
Zitat:
Delphi-Quellcode:
for i := Low(a) to High(a) do
|
Re: Count Wert von Array
@Matze: deine Version funktioniert nur bei mehrdimensionalen Arrays nicht.
@b1zZ: Danke, werde ich mal probieren MFG Steffen |
Re: Count Wert von Array
Zitat:
Delphi-Quellcode:
Damit wirst du aber nur die 1. Dimension durchlaufen.
for i := Low(a) to High(a) do
... Um z.B. in der 2. Dimension durchzulaufen musst du
Delphi-Quellcode:
Damit wirst die 2t Dimension von a[1] durchlaufen.
for i := Low(a[1]) to High(a[1]) do
|
Re: Count Wert von Array
Ja, mein ich doch. Funktioniert bei mir nicht...wäre wohl besser gewesen.
Ich hatte Zugriffsverletzungen, da ich den Index Überschritten habe. Hatte demnach den Index der falschen Dimension als Laufvariable. MFG Steffen |
Re: Count Wert von Array
Delphi-Quellcode:
Warum sollte das nicht funktionieren? :zwinker: Eigentlich kann man dabei auch keine Indizes durcheinanderbringen :gruebel: Schließlich hat man nur einen...
Var max,count : Integer;
aArray : Array of Array of ...; [...] //Anzahl der Arrays im Array count := length(aArray); //maximale Anzahl an Einträgen im "inneren" Array max := 0; for i := low(aArray) to high(aArray) do if max < length(aArray[i]) then max := length(aArray[i]); Erst wenn du auf die Werte zugreifen möchtest, brauchst du 2 Indizes:
Delphi-Quellcode:
//Edit:
//maximaler Wert in einem Array of Array of Integer
max := 0; for i := low(aArray) to high(aArray) do for j := low(aArray[i]) to high(aArray[i]) do if max < aArray[i][j] then max := aArray[i][j]; :shock: :wall: Eben les ich mirs nochmal durch... Hatte die Frage vorher so verstanden, dass der höchste Index der inneren Arrays gesucht ist. Mea Culpa, sorry. Aber mit dem 2. Codestückchen passt ja dann wieder alles :mrgreen: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:39 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 by Thomas Breitkreuz