Hi
Natürlich kenne ich length...
aber ein Freund von mir weiss nicht, wie man eigene Funktionen macht und wollte deshalb eine
length()-"imitation" schreiben.
Ich hab ihm meinen Ansatz genannt und er fragte, ob ich den mal machen könnte.
Hab ich:
Delphi-Quellcode:
function TForm1.GetLength(s: string): integer;
var
i,
count: integer;
begin
i := 1;
count := 0;
while(TRUE) do
begin
try
if s[i] <> '' then INC(count);
Inc(i);
except
break;
end;
end;
Result := count;
end;
Aber das liefert sehr fragwürdige Zahlen.
Aufruf übrigens so:
ShowMessage( IntToStr( Form1.GetLength(Form1.InputLabel.Text) ) );
Bei "lol" sagt er z.B. 5.
Bei "lolo" geht er schon auf über 1800
Weiss jemand woran das liegen kann?
Oder ist die Idee an sich schon falsch?
air
P.S.: Hab anstatt while(TRUE) auch mit nem Boolean probiert, ging auch nicht...