![]() |
AW: String buchstabenweise in array einlesen
Also, wenn ihr ihn verwirren wollt, dann habt ihr das sehr wahrscheinlich mittlerweile geschafft. :?
|
AW: String buchstabenweise in array einlesen
Nur noch Begin und End ersetzt und man hätte einen typischen C-Code :lol:
|
AW: String buchstabenweise in array einlesen
Zitat:
Zitat:
|
AW: String buchstabenweise in array einlesen
Ihr seid schon komische Vögel, der Te offenbart, dass ihm das grundlegende Verständnis fehlt und ihr offenbart ihm eure "speziallösungen", die er bestimmt nicht versteht.
|
AW: String buchstabenweise in array einlesen
Meine Rede :thumb:
|
AW: String buchstabenweise in array einlesen
Einfach an die Aufgabenstellung halten, offensichtlich soll der Umgang mit dyn. Array geübt werden:
Zitat:
Delphi-Quellcode:
type
TCharDynArray = array of Char; function StringToDynArray(const AValue: string): TCharDynArray; begin // Strings beginnen bei Index 1, Arrays bei 0 => wichtiges Lernziel SetLength(Result, Length(AValue)); for i := 0 to Length(Result) - 1 do Result[i] := AValue[i + 1]; end; Zitat:
Delphi-Quellcode:
// Array-Parameter immer als "const" oder "var" übergeben, sonst wird beim Funktionsaufruf eine Kopie angelegt
function GetBuchstabenAnzahl(const ACharDynArray: TCharDynArray; AValue: Char): Integer; begin Result := 0; for i := 0 to Length(ACharDynArray) - 1 do begin if ACharDynArray[i] = AValue then Result := Result + 1; end; end; procedure TForm1.Button1Click(Sender: TObject); var a: TCharDynArray; s: string; n: Integer; begin // Text der durchsucht werden soll s := edit1.text; if Length(s) = 0 then begin MessageBox('Geben Sie einen Text an der durchsucht werden soll!', Caption); Exit; end; a := StringToDynArray(s); // Buchstabe der gesucht wird s := edit2.text; if Length(s) = 0 then begin MessageBox('Geben Sie einen Buchstaben an der gesucht werden soll!', Caption); Exit; end; if Length(s) > 1 then begin MessageBox('Geben Sie nur einen Buchstaben an der gesucht werden soll!', Caption); edit2.text := ''; Exit; end; n := GetBuchstabenAnzahl(a, s[1]); s := Format('Der Buchstabe %s ist %d mal enthalten.', [s, n]); MessageBox(s, Caption); end; |
AW: String buchstabenweise in array einlesen
Zitat:
Und dazu noch inklusive Speicherleck :duck: |
AW: String buchstabenweise in array einlesen
Zitat:
Speicherleck stimmt, hab nicht mehr an das Problem mit Interface als Functionsergebnis gedacht, lokale Variable wär die Lösung :stupid: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:06 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