C kezdőknek
C ++ kezdőknek
5.5. A for loop utasítás
Mint láttuk, egy program végrehajtása gyakran az utasítássorozat ismétlõdésébõl áll, mindaddig, amíg bizonyos feltételek megmaradnak. Például egy fájlt rögzítünk és feldolgozunk, amíg el nem érjük a végét, rendezzük el a tömbelemeket, amíg az index egyenlő lesz a tömb dimenziójával, minus 1 stb. A C ++ három utasítást ad a hurkok szervezésére, különösen a és az idő alatt, amelyek a feltétel ellenőrzésével kezdődnek. Ez a csekk azt jelenti, hogy a hurok véget érhet anélkül, hogy egyszerű vagy összetett kijelentést végezne vele. A harmadik típusú hurok, még akkor is, garantálja, hogy a test legalább egyszer végrehajtásra kerül: a hurok állapot ellenőrzése befejezése után történik. (Ebben a fejezetben részletesen megnézzük a for loop-ot, az 5.6 fejezetben, szétszereljük miközben, és az 5.7 fejezetben - amíg nem.)
A for loop-ot jellemzően olyan adatstruktúrák feldolgozására használják, amelyek fix hosszúságúak, például egy tömb vagy vektor:
A ciklus szintaxisa:
az állapot a ciklus vezérlésére szolgál. Amíg a feltétel igaznak tekinthető, az utasítás folytatódik. A hurok utasításai lehetnek egyszerűek vagy összetettek. Ha az első feltétel hamis, akkor az utasítás soha nem kerül végrehajtásra. A megfelelő feltételek írhatók:
A kifejezést az utasítás végrehajtása után értékeljük a hurok mindegyik iterációján. Általában egy inicializálási utasításban inicializált változó módosítására használják. Ha az első feltétel hamis, akkor a kifejezés soha nem kerül végrehajtásra. A helyes kifejezések így néznek ki:
A következőket a hurok számára
a számítások sorrendje a következő:
- Az inicializáló utasítás végrehajtása egyszer megtörténik a hurok kezdete előtt. Ebben a példában az ix változó deklarálódik, ami inicializálva 0-ra.
- A feltétel kiszámítása. Ha ez igaz, akkor a hurok test összetett kijelentése végrehajtásra kerül. Példánkban, míg ix kisebb, mint sz, az ix értéke az ivec [ix] és ia [ix] elemekhez van hozzárendelve. Ha a feltétel értéke hamis, akkor a hurok leáll. Ha az első feltételszámítás hamis, akkor az összetett utasítás nem kerül végrehajtásra.
- A kifejezést értékeljük. Általában az inicializálási utasításban megjelenő változó módosítására használják, és az állapotban van. Példánkban az ix értéke 1-gyel növekszik.
A for utasítás zárójeleiben definiált összes objektum láthatósága a hurok testére korlátozódik. Például, ha a hurok után ellenőrzi az utat, összeállítási hiba keletkezik:
Gyakorlat 5.8
Hacsak a hurkok megengedettek a következőkben? Ha igen, melyik?
Gyakorlat 5.9
Képzeld el, hogy utasítást kapsz arra, hogy közös stílusban jöjjenek létre a for-loop-ot a projektben. Mutassa be és illusztrálja a példákat a ciklus mindhárom részének használatára vonatkozó szabályokkal.
5.10 gyakorlat
Írjunk egy olyan függvényt, amely két vektor egyenlőségét határozza meg. Különböző hosszúságú vektorok esetén csak az elemek számát hasonlítsa össze, amely megfelel a két kisebbiknek. Például a (0,1,1,2) és (0,1,1,2,3,5,8) vektorokat azonosnak tekintjük. A vektorok hossza felismerhető a v1.size () és a v2.size () függvények használatával.