3.5 跳轉(zhuǎn)語(yǔ)句
C+ +中有4種跳轉(zhuǎn)語(yǔ)句,它們是:break語(yǔ)句、continue語(yǔ)句、return語(yǔ)句和goto語(yǔ)句。
1break語(yǔ)句
break語(yǔ)句又稱為跳出語(yǔ)句,其語(yǔ)法格式如下:
break;
即由關(guān)鍵字break加上一個(gè)分號(hào)構(gòu)成。
break語(yǔ)句只能用在switch語(yǔ)句和循環(huán)語(yǔ)句中。在switch語(yǔ)句中,break用來(lái)使執(zhí)行流程跳出switch語(yǔ)句,而繼續(xù)執(zhí)行switch后面的語(yǔ)句。在循環(huán)語(yǔ)句中,break用來(lái)使執(zhí)行流程無(wú)條件地跳出本層循環(huán)體。
另外,break語(yǔ)句還經(jīng)常用于使執(zhí)行流程跳出死循環(huán)。
2continue語(yǔ)句
continue語(yǔ)句又稱為繼續(xù)語(yǔ)句,其語(yǔ)法格式如下:
continue;
即由關(guān)鍵字continue加上一個(gè)分號(hào)構(gòu)成。
continue語(yǔ)句僅用在循環(huán)語(yǔ)句中,它的功能是:結(jié)束本次循環(huán),即跳過(guò)循環(huán)中尚未執(zhí)行的語(yǔ)句,接著進(jìn)行下一次是否執(zhí)行循環(huán)的條件判定。
在while和do…while循環(huán)中,continue語(yǔ)句將使執(zhí)行流程直接跳轉(zhuǎn)到循環(huán)條件的判定部分,然后決定循環(huán)是否繼續(xù)進(jìn)行。在for循環(huán)中,當(dāng)遇到continue時(shí),執(zhí)行流程將跳過(guò)循環(huán)中余下的語(yǔ)句,而轉(zhuǎn)去執(zhí)行for語(yǔ)句中的<表達(dá)式3>,然后根據(jù)<表達(dá)式2>進(jìn)行循環(huán)條件的判定以決定是否繼續(xù)執(zhí)行for循環(huán)體。
3return語(yǔ)句
return語(yǔ)句又稱為返回語(yǔ)句,它具有兩種語(yǔ)法格式:
(1)return;
(2)return<表達(dá)式>;
其中,return為關(guān)鍵字,第2種格式中的<表達(dá)式>可以是任何類型的C+ +表達(dá)式。
return語(yǔ)句只能用在函數(shù)體中。在返回類型為void的函數(shù)體中,若想跳出函數(shù)體,將執(zhí)行流程轉(zhuǎn)移到調(diào)用該函數(shù)的位置,應(yīng)使用return語(yǔ)句的第1種格式。在返回類型不是void的函數(shù)體中,應(yīng)使用return語(yǔ)句的第2種格式,使執(zhí)行流程轉(zhuǎn)移到調(diào)用該函數(shù)的位置,并將<表達(dá)式>的值作為函數(shù)的返回值。
對(duì)于非void返回類型的函數(shù)來(lái)說(shuō),其函數(shù)體中必須至少具有一條return語(yǔ)句。
4goto語(yǔ)句
goto語(yǔ)句又稱為轉(zhuǎn)向語(yǔ)句,其語(yǔ)法格式如下:
goto<標(biāo)號(hào)>;
其中,goto為關(guān)鍵字;<標(biāo)號(hào)>是一個(gè)由用戶命名的標(biāo)識(shí)符。在goto語(yǔ)句所處的函數(shù)體中必須同時(shí)存在一條由<標(biāo)號(hào)>標(biāo)記的語(yǔ)句,其格式為:
<標(biāo)號(hào)>:<語(yǔ)句>
即在<標(biāo)號(hào)>和<語(yǔ)句>之間使用一個(gè)冒號(hào)分隔,這種語(yǔ)法結(jié)構(gòu)稱為標(biāo)號(hào)語(yǔ)句。標(biāo)號(hào)語(yǔ)句中的<標(biāo)號(hào)>應(yīng)與goto語(yǔ)句中的<標(biāo)號(hào)>相同,<語(yǔ)句>可以是任何類型的C+ +語(yǔ)句。注意:某個(gè)goto語(yǔ)句和相應(yīng)的標(biāo)號(hào)語(yǔ)句必須位于同一函數(shù)體內(nèi)。
goto語(yǔ)句的功能是使執(zhí)行流程跳轉(zhuǎn)到<標(biāo)號(hào)>所標(biāo)記的<語(yǔ)句>處(即對(duì)應(yīng)的標(biāo)號(hào)語(yǔ)句處)。
編輯推薦:
2014年上半年計(jì)算機(jī)等級(jí)考試報(bào)名時(shí)間預(yù)告
北京 | 天津 | 上海 | 江蘇 | 山東 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
廣東 | 河北 | 湖南 | 廣西 | 河南 |
海南 | 湖北 | 四川 | 重慶 | 云南 |
貴州 | 西藏 | 新疆 | 陜西 | 山西 |
寧夏 | 甘肅 | 青海 | 遼寧 | 吉林 |
黑龍江 | 內(nèi)蒙古 |