Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
10.996 Beiträge
 
Delphi 12 Athens
 
#45

AW: Anzahl eines Zeichens im String ermitteln

  Alt 12. Jul 2018, 21:31
Nur so zum Spaß noch eine Version, die auch mit PChar arbeitet, aber trotzdem #0 Zeichen im String zulässt.
(Kann sein, daß die Pointer-Arithmetik in älteren Versionen noch nicht funktioniert. Dann die auskommentierte Variante verwenden.)
Delphi-Quellcode:
function CharCount(const S: string; C: Char): Cardinal;
var
  P, PEnd: PChar;
begin
  Result := 0;
  P := PChar(S);
  PEnd := P + Length(S));
// PEnd := P;
// Inc(PEnd, Length(S));
  while P < PEnd do begin
    while P^ <> C do begin
      Inc(P);
      if P = PEnd then Exit;
    end;
    Inc(Result);
    Inc(P);
  end;
end;
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat