国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C > 正文

深入c語言continue和break的區別詳解

2020-01-26 16:14:33
字體:
來源:轉載
供稿:網友

自認為C語言還算入門的人,看來還是高估自己了.沒想到在這個地方還有這么有趣的東西.有些話看來要仔細深究才能真正入門啊....

================================================================================

復制代碼 代碼如下:

#include <stdio.h>
int main(void)
{
   int flag=0;
   for(int j=0; j <2; j++) {
      if(j==0) {
         switch(j) {
            case 0:

            continue;
         }
         flag=1;
      }
   }
   printf( " flag:%d/n ",flag);
}


輸出:
flag:0

如果代碼為:
case 0: break;
輸出:
flag:1

======================================================================

再看:

復制代碼 代碼如下:

#include <stdio.h>

void main()
{
   int flag = 0;
   int j = 0 ;
   for(j=0; j <2; j++) {
      if(j==0) {
         if(j==0) {
            continue;

         }
         flag=1;

      }

   }
   printf( " flag:%d/n ",flag);
}


輸出:
flag:0

如果代碼為:
break;
輸出:
flag:0

==========================================

在C語言書中,對于continue和break是這么描述的:

break語句可以從最內層的循環或者switch語句中退出.

continue語句只能出現在for, while, do循環中

=========================================

結論:continue只對直接包含它的循環體有效(也就是for,while, 而switch{}中的不算循環體);而break有效的是直接包含它的for,while,switch塊。


比如在不包含switch的代碼中出現break或者continue,那么break跳出循環體,而continue跳出本次循環.

而對于在循環中嵌套switch語句的代碼中,break僅跳出最內層的塊,這個塊若是switch,就僅跳出switch.

而continue即使出現在switch塊中,因為continue的作用范圍僅針對 for while 之類的循環語句,故不起作用,依舊跳出本次循環.

不注意的話也會認為同樣是跳出switch語句塊了.

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 谷城县| 突泉县| 汕头市| 崇阳县| 富阳市| 射阳县| 河南省| 闵行区| 万安县| 武安市| 若羌县| 武定县| 北安市| 军事| 石河子市| 遂平县| 江都市| 当涂县| 巢湖市| 武义县| 平远县| 阿坝县| 彝良县| 台湾省| 沙坪坝区| 丽江市| 敦化市| 凉山| 九龙城区| 鸡泽县| 南陵县| 龙陵县| 荆州市| 遵义县| 垣曲县| 济宁市| 仙游县| 永和县| 乌拉特中旗| 临邑县| 井研县|