国产探花免费观看_亚洲丰满少妇自慰呻吟_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語句塊了.

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

圖片精選

主站蜘蛛池模板: 灌南县| 余干县| 鹿泉市| 淅川县| 鞍山市| 方山县| 洞头县| 贵溪市| 霍邱县| 宜兴市| 辽中县| 东丽区| 麻栗坡县| 大兴区| 临湘市| 固镇县| 河津市| 上思县| 塔河县| 同德县| 屏南县| 上饶县| 泸西县| 法库县| 门头沟区| 海安县| 邢台县| 禄劝| 额敏县| 梁平县| 夏津县| 上高县| 饶阳县| 宜州市| 广昌县| 梧州市| 文山县| 黄骅市| 铁力市| 揭东县| 大姚县|