Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   for- Schleife : Anfangsvariable aktualisieren (https://www.delphipraxis.net/137215-schleife-anfangsvariable-aktualisieren.html)

Kalfany 16. Jul 2009 10:05

Re: for- Schleife : Anfangsvariable aktualisieren
 
Zitat:

Zitat von mkinzler
Man sollte eine Laufvariable nicht verändern!

Nicht nur das, je nach Schleifen-Typ funktioniert das auch gar nicht

mkinzler 16. Jul 2009 10:06

Re: for- Schleife : Anfangsvariable aktualisieren
 
Bei PosEx() kann man doch den Start-Index setzen

Neutral General 16. Jul 2009 10:10

Re: for- Schleife : Anfangsvariable aktualisieren
 
Zitat:

Zitat von Kalfany
Zitat:

Zitat von mkinzler
Man sollte eine Laufvariable nicht verändern!

Nicht nur das, je nach Schleifen-Typ funktioniert das auch gar nicht

Mit Pointern gehts ;) :twisted:

Stormy 16. Jul 2009 10:16

Re: for- Schleife : Anfangsvariable aktualisieren
 
Mal so auf die SChnelle und ungetestet versuch es mal so:

Delphi-Quellcode:
  j := 10;
  repeat
    TabPos1 := posEx(#9,head,j);
    if TabPos1 <> 0 then
    begin
      TabPos2 := posEx('[',head,TabPos1+1);
      //ShowMessage(IntToStr(TabPos2));
      if TabPos2 <> 0 then
      begin
        j := TabPos2;
        Length1 := TabPos2-TabPos1;
        MWBeztemp := Copy(head, TabPos1,Length1);
        MWBez := MWBez+#9+MWBeztemp;
      end else j := -1;
    end else j := -1;
  until j = -1;

aaaaaaaaaa_10 16. Jul 2009 10:25

Re: for- Schleife : Anfangsvariable aktualisieren
 
Delphi-Quellcode:
   k := 10;
    while k <= Length(head) do
    begin
      TabPos1 := posEx(#9,head,k);
      if TabPos1 <> 0 then
      begin
          TabPos2 := posEx('[',head,TabPos1+1);
          if TabPos2 <> 0 then
          begin
              Length1 := TabPos2-TabPos1;
              MWBeztemp := Copy(head, TabPos1,Length1);
              MWBez := MWBez+#9+MWBeztemp;
              k := TabPos2+1;
          end;
       end
       else begin  !!!!!!
       end;
    end
    else begin    !!!!!!!!
    end;
Hab es jetzt so. Funktionier auch,aber bei den else sagt er, dass EXCEPT oder FINALLY erwartet ?

Stormy 16. Jul 2009 10:29

Re: for- Schleife : Anfangsvariable aktualisieren
 
Hast du evl. ein end falsch gesetzt oder irgendwo ein Try stehen??
Versuch es mal so:

Delphi-Quellcode:
k := 10;
    while k <= Length(head) do
    begin
      TabPos1 := posEx(#9,head,k);
      if TabPos1 <> 0 then
      begin
          TabPos2 := posEx('[',head,TabPos1+1);
          if TabPos2 <> 0 then
          begin
              Length1 := TabPos2-TabPos1;
              MWBeztemp := Copy(head, TabPos1,Length1);
              MWBez := MWBez+#9+MWBeztemp;
              k := TabPos2+1;
          //end;
       end
       else begin  !!!!!!
       end;
    end
    else begin    !!!!!!!!
    end;
  end;

aaaaaaaaaa_10 16. Jul 2009 10:30

Re: for- Schleife : Anfangsvariable aktualisieren
 
:wall: ja, klar.. wird zeit dass mittag ist

Neutral General 16. Jul 2009 10:32

Re: for- Schleife : Anfangsvariable aktualisieren
 
Hi,

PS: Wenn du den else-Block nicht brauchst, musst du ihn auch nicht hinschreiben ;)

Du kannst das ganze so schreiben:

Delphi-Quellcode:
while k <= Length(head) do
begin
  TabPos1 := posEx(#9,head,k);
  if TabPos1 <> 0 then
  begin
    TabPos2 := posEx('[',head,TabPos1+1);
    if TabPos2 <> 0 then
    begin
      Length1 := TabPos2-TabPos1;
      MWBeztemp := Copy(head, TabPos1,Length1);
      MWBez := MWBez+#9+MWBeztemp;
      k := TabPos2+1;
    end;
  end;
end;
Gruß
Neutral General

Draos 16. Jul 2009 10:37

Re: for- Schleife : Anfangsvariable aktualisieren
 
Delphi-Quellcode:
  i:=10;
  while i<=Length(Head) do
   if Irgendwas then begin
    ...
    Inc(i,5);
   end else
    Inc(i);

aaaaaaaaaa_10 16. Jul 2009 10:54

Re: for- Schleife : Anfangsvariable aktualisieren
 
@Neurtral General: ich brauch den else block, hab ihn nur noch nicht "bestückt" :wink:


Alle Zeitangaben in WEZ +1. Es ist jetzt 09:57 Uhr.
Seite 2 von 2     12   

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