0

PHP のループを学習していましたが、FOR ループを実行したときに、めちゃくちゃになったようです。基本的に、これは起こりました:

    for($i = 2; $i++; $i < 26) {
   print $i;
  }

最後に $i++ を追加して修正しました。しかし、私の質問は次のとおりです。これはバッファ オーバーフローでしたか? 数10000を超えました

4

4 に答える 4

8

いいえ、それは単なる無限ループです。メモリを追加するものは何もないので、オーバーフローするものは何もありません。実行を停止することはありません。それだけです。

于 2013-07-16T08:25:16.603 に答える
3

間違った方法:

for($i = 2; $i < 26; $i++) {
   print $i;
}

PHPfor loopは次のように動作します。

for(<initialization>; <condition>; <iteration>) {

}

これらのフィールドには何でも入れることができますが、正しく機能させるためには、PHP がフィールドに対して何を行っているかを理解する必要があります。

$i = 2; それが初期化ですincremental variable

$i < 26; それが条件で、while $i is less than 26

$i++; 反復。after each turn of the loop, add$i` に。

この場合、$i が 25 になると、ループが終了します。

于 2013-07-16T08:25:46.330 に答える
2

そのはず...

for($i = 2;  $i < 26; $i++) {
  print $i;
}

マニュアルを参照してくださいhttp://php.net/manual/en/control-structures.for.php

于 2013-07-16T08:27:31.127 に答える
1

無限ループだったと思います。2 番目の位置に置くものは、ループが反復を続けるまでの状態を示します。常に $i を 1 ずつ増やすことができるため、条件は常に真であり、永遠に繰り返すことになります。

于 2013-07-16T08:27:30.747 に答える