for文
for文は、ループ(繰り返し)処理を記述する文です。
次のように、()括弧内に初期化の式、ループ継続条件式、処理実行毎に実行する式を;セミコロンで区切って記述して、{}括弧内にループさせる処理を記述します。
for (初期化の式; ループ継続条件式; 処理実行毎に実行する式) { 処理 }
※処理が単文の場合は、{}括弧は省略可能です。
サンプルコード
int i; // 整数変数「i」を宣言
for (i=0; i<3; i++) // 「i」を0に初期化、「i」が5未満ならループ継続、処理実行毎に「i」に1を足す
{
Print(i); // 「i」の値を出力
}
上記のサンプルコードでは、整数変数iを宣言しておいて、変数iの値をループ継続条件にしています。上記コードを実行すると次のようなループ処理になります。
for文開始時 | |
---|---|
変数iの値 | 初期化の式i=0が実行され、変数iの値は 0 |
ループ継続判定 | i<3なので処理を実行 |
処理内容 | Print(i)を実行(「0」と出力されます) |
for文ループ | |
---|---|
変数iの値 | 処理実行毎に実行する式i++が実行され、変数iの値は 1 |
ループ継続判定 | i<3なので処理を実行 |
処理内容 | Print(i)を実行(「1」と出力されます) |
for文ループ | |
---|---|
変数iの値 | 処理実行毎に実行する式i++が実行され、変数iの値は 2 |
ループ継続判定 | i<3なので処理を実行 |
処理内容 | Print(i)を実行(「2」と出力されます) |
for文ループ | |
---|---|
変数iの値 | 処理実行毎に実行する式i++が実行され、変数iの値は 3 |
ループ継続判定 | i<3ではなので処理を実行しません |
処理内容 | なにもせずfor文を終了 |
()括弧内の式の省略
()括弧内の初期化の式、ループ継続条件式、処理実行毎に実行する式はどれも省略可能です。
for(;;)とすると、while(true)と同じ意味になります。無限ループに注意しましょう。