Einzelnen Beitrag anzeigen

schöni

Registriert seit: 23. Jan 2005
Ort: Dresden
445 Beiträge
 
Delphi 7 Personal
 
#21

AW: Zeilen in einem String zählen

  Alt 9. Mai 2012, 09:24
Eventuell wird es einfacher/übersichtlicher, wenn du das letzte Inc(P), also das der Schleife, mit in die IFs aufnimmst
Delphi-Quellcode:
while P^ <> #0 do
  if P^ = #13 then begin
    Inc(Result);
    if (P + 1)^ = #10 then
      Inc(P);
    Inc(P); {<<<}  //warum hier dieses zweite Inc(P)?
  end else if P^ = #10 then begin
    Inc(Result);
    Inc(P); {<<<}
  end else
    Inc(P); {<<<}
und dann noch etwas an der Reihenfolge veränderst.
Delphi-Quellcode:
while P^ <> #0 do
  if P^ = #13 then begin
    Inc(Result);
    Inc(P); {<<<}
    if P^ = #10 then {<<<}
      Inc(P);
  end else if P^ = #10 then begin
    Inc(Result);
    Inc(P);
  end else
    Inc(P);
Ich verstehe das 2. Inc(p) nicht.

Delphi-Quellcode:
if (P + 1)^ = #10 then
      Inc(P);
    Inc(P); {<<<} /hier!!!
nach dem ersten Inc(p) steht doch der Stringzeiger bereits auf dem ersten Zeichen der neuen Zeile.
Damit der Topf nicht explodiert, lässt man es ab und zu mal zischen.
  Mit Zitat antworten Zitat