while ステートメントは、指定された条件が真である間、ステートメントまたはブロックを繰り返し実行するものです。ループを作成することができます。
構文は以下の通りです。
while(expression)
ステートメントまたはブロック
「ステートメントまたはブロック」は、条件式である expression が真である限り、繰り返し実行されます。
動作としては、
(1) まず、expression を評価し、偽であれば、ステートメントまたはブロックは実行されない
(2) ステートメントまたはブロックを実行する
(3) expression を評価し、その結果が真ならば (2) へ、そうでなければ while ステートメント終了
つまり、最初から expression が偽の場合はステートメントまたはブロックは実行されません。また、常に expression が評価されるわけではなく、ステートメントまたはブロックを一回実行するごとに expression の真偽がチェックされます。
また、(3) の時点で、ブロックの場合はいったんブロックから抜けます ( 変数などは消去されると言うこと )。
例:
while(func()) ;
while(func()) i++;
while(i < 5)
{
func(i);
i++;
}