1

プログラミングを学び始めて以来、私が学ぶすべての言語には常にwhileループとforループがあります。

ループができるwhileすべてのことを行うことができます。forどちらも同じ機能を実行して繰り返します。forでは、ループを追加する目的は何でしたか?

それらを使用する際にパフォーマンスの違いはありますか?すべての言語に 2 つのループがあるのはなぜですか?

4

4 に答える 4

2

forたとえばC/C++で使用される典型的なループについて話していると思います。

ループforはいつでもループに書き直すことができますが、読みやすさwhileの点で大きな利点があります。 ループに関連するすべてのプロパティ

  • 初期化
  • テスト
  • ポスト ループ操作 (通常は増加またはトラバース)

1行でキャプチャできます。ループを含む長い本文がある場合while、全体が画面サイズに収まらないか、収まったとしてもコードを視覚的に解析して何が起こっているかを確認する必要があります。

本質的に、該当する場合、forループはコードの意図をより適切に捉えます。

于 2013-03-10T20:14:14.253 に答える
0

ループを「ループ」にする条件であり、どちらの場合も条件はユーザーによって提供されるため(そして、マシンコードへのループ構成変換の一部ではありません)、ドキュメントツールとしてさまざまなフレーバーで存在するのではないかと思います。何よりも。ただし、forループを使用すると、ループの期間中のみ存在するローカル変数を宣言できます。

for (Iterator it = c.begin(); it != c.end(); ++it) {
} // it destroyed here

多くの場合、すべてのループなしで実行できます。後藤は十分です

于 2013-03-10T20:26:48.250 に答える
0

唯一の違いはコードの読みやすさです。コンパイル時に、ループは前の初期化とそれに続くインクリメントをfor含むループに変換されます。while

于 2013-03-10T20:14:15.187 に答える
0

forループは、終了条件がわかっている場合に使用されます。

whileループは通常、終了条件がわからない場合に使用されます。終了条件がどうなるか気にしない場合は、より良いと言えます...そしてパフォーマンスに関しては両方とも同じです

于 2013-03-10T20:14:15.867 に答える