您好,登錄后才能下訂單哦!
return、break和continue
這三個關鍵字有一個共同點,那就是讀能讓后面的語句不執(zhí)行,不同的地方就是挑的距離不一樣。
return很強大,如果一個函數(shù)中有一個return,并且執(zhí)行了,那么這個函數(shù)就完了。return 表示從被調(diào)函數(shù)返回到主調(diào)函數(shù)繼續(xù)執(zhí)行,返回時可附帶一個返回值,由return后面的參數(shù)指定。 return通常是必要的,因為函數(shù)調(diào)用的時候計算結(jié)果通常是通過返回值帶出的。 如果函數(shù)執(zhí)行不需要返回計算結(jié)果,也經(jīng)常需要返回一個狀態(tài)碼來表示函數(shù)執(zhí)行的順利與否(-1和0就是最常用的狀態(tài)碼),主調(diào)函數(shù)可以通過返回值判斷被調(diào)函數(shù)的執(zhí)行情況。
break稍微弱小一點,它一般用在循環(huán)語句中,用于結(jié)束循環(huán),從當前循環(huán)外面開始執(zhí)行,忽略循環(huán)體中任何其他語句和循環(huán)條件測試。他只能跳出一層循環(huán),如果你的循環(huán)是嵌套循環(huán),那么你需要按照你嵌套的層次,逐步使用break來跳出。
continue和break類似,都是結(jié)束循環(huán),不過,沒有break強大,他只能結(jié)束本次循環(huán),也就是說,他并不跳出循環(huán),而是繼續(xù)往下判斷循環(huán)條件執(zhí)行語句.他只能結(jié)束循環(huán)中的一次過程,但不能終止循環(huán)繼續(xù)進行。
還是看一個例子吧:
int main() { int i = 0; int n = 5; for (i = 0; i < 10; i++) { if (i == n) { return; } printf("hehe!\n"); } printf("hehe!\n"); }
int main() { int i = 0; int n = 5; for (i = 0; i < 10; i++) { if (i == n) { break; } printf("hehe!\n"); } printf("hehe!\n"); }
int main() { int i = 0; int n = 5; for (i = 0; i < 10; i++) { if (i == n) { continue; } printf("hehe!\n"); } printf("hehe!\n"); }
這些個例子通過輸出“hehe!”的個數(shù)就可以看出他們的區(qū)別了。return在執(zhí)行到第六次的時候結(jié)束,直接結(jié)束函數(shù),那么會有五次hehe;break也是在第六次的時候結(jié)束,不過,它是結(jié)束循環(huán),所以還得執(zhí)行循環(huán)外的一次hehe,總共六次;而continue是結(jié)束了第六次循環(huán),所以是在循環(huán)內(nèi)部執(zhí)行了九次,循環(huán)外部一次,總共十次。
return
1、含義:return表示從被調(diào)函數(shù)中返回到主調(diào)函數(shù)中,返回的同時可以附帶一個返回值,這個返回值可以是常量、變量,也可以是表達式。
2、作用:結(jié)束正在運行的函數(shù),并返回函數(shù)值。
3、函數(shù)返回值:
計算結(jié)果表示函數(shù)執(zhí)行的順利與否(-1、0)
返回值可以為各種數(shù)據(jù)類型,如:int,float,double,char,a,*a(指針),結(jié)構或類(c++)
以上就是億速云小編整理的全部內(nèi)容,希望能夠給大家?guī)韼椭?/p>
免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。