Einzelnen Beitrag anzeigen

gangs-taas

Registriert seit: 24. Mär 2009
364 Beiträge
 
#1

Recursive procedure die nicht macht was sie soll

  Alt 26. Jan 2010, 15:34
hey,
ich hab das hier geschrieben :

Delphi-Quellcode:
  procedure Nur_Wichtige_Termine(Datum : TDateTime; var W_T_Array : Array of TStringlist; Var Termine : TStringlist);

    procedure ErsterTagDerWoche(var Datum : TDateTime);
    var
      i : integer ;
    begin
      I := DayOfTheWeek(Datum);
      If i <> 1 Then
      begin
        IncDay(Datum,-1); // <= hier Fehler
        ErsterTagDerWoche(Datum)
      end;
    end;

  begin
    ErsterTagDerWoche(Datum);
  end;
aber ich bekomme einen Stack-Überlauf ...
wenn ich mit Breakpoints da durch Steppe merke ich auch woran es liegt aber ich versteh nicht wieso :
in der Zeile wo er das Datum um eins reduzieren soll macht er das nicht ... aber ich versteh nicht warum nicht ?
der müsste doch eigl. machen was ich ihm da sag oder nicht ?
warum tut er das nicht...

Die Ursache für den Fehler ist, dass i nie 1 wird... aber ich verstehe nicht waurm nicht ...
  Mit Zitat antworten Zitat