E2081 for ループ制御変数 '%s' に代入しました (Delphi)
エラーと警告のメッセージ(Delphi) への移動
for ループの内部で for ループの制御変数へ値を代入するのは違法です。
予定より早くループを出るのが目的ならば,Break か goto 文を使用してください。
program Produce; var I: Integer; A: array [0..99] of Integer; begin for I := 0 to 99 do begin if A[I] = 42 then I := 99; end; end.
{ この例ではプログラマは I へ 99 を代入すればプログラムがループから出ると考えた }
program Solve; var I: Integer; A: array [0..99] of Integer; begin for I := 0 to 99 do begin if A[I] = 42 then Break; end; end.
{ for ループを出るには Break 文を使った方が問題が少ない }