値が5であるはずなのにxが6になる理由がわかりません。
Sub Main()
Dim x = 0
For x = 1 To 5
Next
Console.WriteLine(x)
Console.ReadLine()
End Sub
結果: 6
x
6に等しい理由は、ループの性質によるものです。ループの本体の中にコードを入れません。そこにコードを印刷すると、次のように表示されます。
1
2
3
4
5
Nextに到達するたびに、x
がインクリメントされます。5回目にループを通過すると、x
6にインクリメントされます。ほとんどの場合、ループの外側でループ変数を使用しないことをお勧めします。Cスタイルのループを使用すると、私が意味することはもう少し明確になります
for (int i=0; i<=5; i++){}
ループは、条件i <= 5
が真でなくなるまで実行されます。ループを通過するたびに1ずつi
増加するため、これi
は6に等しいときに最初に発生します。i
これi
は、よりもはるかに一般的なループ変数名であるため、ここで変数を使用しましたx
。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加