初期化されない場合があります


侍7  2007-11-01 15:17:54  No: 28184  IP: 192.*.*.*

for i := 0 to 10 do begin
  ・・・
end;

上記のような普通のfor文について質問があります。

コンパイルをすると以下のような警告が表示されます。
『変数'i'は初期化されない場合があります』

そこで、for文の外でi:=0;と初期化を行うと以下のようなヒントが表示されてしまいます。
『'i'に代入された値は使われていません』

上記のような警告もヒントも表示されないようにするスマートな方法はありますでしょうか?
宜しくお願いします。

編集 削除
風来坊  2007-11-01 18:56:09  No: 28185  IP: 192.*.*.*

for分を抜けた後に変数 i を参照していませんか?

とりあえず、警告がでるコードを書き込んではいかがでしょう。
レスがつきやすいと思います。

編集 削除
TOBY  URL  2007-11-01 21:45:35  No: 28186  IP: 192.*.*.*

最低限の再現コードを出された方がいいと思います。

>for i := 0 to 10 do begin
>  ・・・
>end;

を見た限り、特に問題がないように思えます。

編集 削除
3K  2007-11-02 23:28:12  No: 28187  IP: 192.*.*.*

for文より前に
if i=...    の文があると  
『変数'i'は初期化されない場合があります』が表示され
その警告を出さないために、さらに上記  if i=...  より前に
i:=0;
を追加すると『'i'に代入された値は使われていません』が表示される。
こんな事をやってないでしょうか?

そうであれば、if i=...  に問題がある。

編集 削除