Einzelnen Beitrag anzeigen

Dennis07

Registriert seit: 19. Sep 2011
Ort: Deutschland
482 Beiträge
 
Delphi 11 Alexandria
 
#26

AW: array[1..10] auf Wert prüfen?

  Alt 14. Aug 2018, 00:59
Dieser Registerinhalt kann nach "einer Weile" Code hinter der Schleife einfach einen anderen Wert haben.
Und nein, das stimmt einfach nicht. Sorry, aber das ist falsch.
Die Zählervariable ist eine ganz normale Variable, die vor oder auch danach einen festen Wert hat/haben kann.
Deshalb kannst du ja auch 2 for -Schleifen hintereinander packen ohne dass es zu Problemen kommt.

Delphi-Quellcode:
program CountTo100;

var
  I: Integer;
begin
  for I := 1 to 50 do WriteLn(I);
  WriteLn('Halbzeit');
  for I := Succ(I) to 100 do WriteLn(I);
  WriteLn('Fertig');
end.
Das funktioniert so einwandfrei, und da wird nichts "umgepackt". Der Compiler managet deine Variablen schon alle, und das ohne dir da irgendwas zu überschreiben. Und schon überhaupt nicht überschreibt der dir die Ergebnisvariable irgendwo im Code, ohne, dass du das willst. Wenn es mehr Variablen/Parameter als Register gibt, dann werden Sachen auf dem Stack abgelegt.
Dennis
  Mit Zitat antworten Zitat