E2032 FOR-Schleifenvariable muss von ordinalem Typ sein (Delphi)

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Fehler- und Warnungsmeldungen (Delphi)

Die Steuervariable einer for-Schleife muss vom Typ Boolean, Char, WideChar oder Integer bzw.


program Produce;
var
  x: Real;
begin (*Plot sine wave*)
  for x := 0 to 2*pi/0.2 do                            (*<-- Hier die Fehlermeldung*)
    Writeln( '*': Round((Sin(x*0.2) + 1)*20) + 1 );
end.

In diesem Beispiel wird eine Variable vom Typ Real als Steuervariable für die for-Schleife verwendet; dies ist nicht zulässig.


program Solve;
var
  x: Integer;
begin (*Plot sine wave*)
  for x := 0 to Round(2*pi/0.2) do
    Writeln( '*': Round((Sin(x*0.2) + 1)*20) + 1 );
end.

Stattdessen muss der Ordinaltyp Integer verwendet werden.

Diese Fehlermeldung wird angezeigt, wenn eine Steuervariable des Typs Int64 oder Variant in einer for-Schleife verwendet wird. Sie können dieses Compiler-Problem beheben, indem Sie die for-Schleife durch eine while-Schleife ersetzen.