(28)迭代語句

2021-07-24 13:16:36 字數 1454 閱讀 6040

迭代語句通常稱為迴圈,它重複執行操作直到滿足某個條件才停下來。while和for語句在執行迴圈體之前檢查條件,do while語句先執行迴圈體,然後再檢查條件。

只要條件為真,while語句就重複的執行迴圈體,它的語法形式是:

while(condition)

statement

定義在while條件部分或者while迴圈體內的變數每次迭代都經歷從建立到銷毀的過程。

使用while迴圈的情形:

一.不確定迴圈的次數

二.想在迴圈結束後訪問迴圈控制變數

for語句的語法形式:

for(init-statement;dondition;expression)

statement

init-statement必須是以下三種形式中的一種:宣告語句、表示式語句或者空語句。

傳統for迴圈的執行流程:

一.迴圈開始時,首先執行一次init-statement

二.接下來判斷consition

三.如果條件為真執行迴圈體

四.最後執行expression

和其他的宣告一樣,init-statement也可以定義多個物件。但是init-statement只能有一條宣告語句,因此,所有變數的基礎型別

必須相同。

for語句頭能省略掉init-satement、condition和expresssion中的任何乙個(或者全部):

一.如果無須初始化,則我們可以使用一條空語句作為init-statement.

二.省略condition的效果等價於在條件部分寫了乙個true。

三.省略掉for語句頭中的expression,但是在這樣的迴圈中就要求條件部分或者迴圈體必須改變迭代變數的值。

範圍for:可以遍歷容器或者其他序列的所有元素.。

語法形式:

for(declaration:expression)

statement

expression表示的必須是乙個序列,比如用花括號括起來的初始值列表或者vector或string等型別的物件,這些型別的共同特點是

擁有能返回迭代器的begin和end成員。

declaration定義乙個變數,序列中的每個元素都得到能轉換成該變數的型別。

do while語句和while語句非常相似,唯一的區別是,do while語句先執行迴圈體後檢查條件。不管條件的值如何,我們都至少執行

一次迴圈。

語法形式:

dowhile(condition);

do while語句應該在括號包圍起來的條件後面用乙個分號表示語句結束。

在do語句中,求condition的值之前首先執行一次statement,condition不能為空。如果condition的值為假,迴圈終止;否則,重複

迴圈過程。condition使用的變數必須定義在迴圈體之外。

因為對於do while來說先執行語句或者塊,後判斷條件,所以不允許在條件部分定義變數。

28 迭代器介面卡

本篇主要介紹介面卡中的第三種,它屬於迭代器的介面卡,換句話說就是對迭代器進行改造。下面用兩個例子reverse iterator和inserter進行舉例。reverse iterator是用來改造迭代器,使迭代器進行反向操作。如序列式容器中的begin 和end 就是用迭代器介面卡reverse ...

C 迭代語句

迭代語句主要用於重複執行嵌入語句,在c 中,常見的迭代語句有while語句 do while語句 for語句和foreach語句。表示式 while 布林表示式 計算布林表示式中的值是否為true,為true時,執行語句塊中的語句 執行完語句塊中的語句後,重新計算布林表示式中的語句如果為true,繼...

C 迭代語句

1,do while語句 do語句重複執行語句或者語句塊,直到指定的表示式為false為止。迴圈體如果為單個語句,可以不放在 內,如果不是,那麼必須放在 內。如下面的 code int i 0 dowhie i 10 do的會無限迴圈執行。注 do while語句,無論while條件為true or...