break和continue的区别

    技术2022-05-19  22

    一、先看MSDN关于break和continue语句的帮助说明 1、break 语句用于终止最近的封闭循环或它所在的 switch 语句。控制传递给终止语句后面的语句(如果有的话)。 2、continue 语句将控制权传递给它所在的封闭迭代语句的下一次迭代。 二、对break和continue语句的解释 通过对MSDN帮助的理解,我们可以得出以下结论: 1、break 语句在循环(for、for in,……)和switch等具有迭代选择特征的语句中使用,而且是终止最近的封闭代码块(即多重循环时,它只终止自己所在的循环),整体代码接在break语句后继续执行(如果break语句不是最后一行代码的话)。 2、continue语句与break语句使用场合类似,continue语句是不可以在单独的switch语句中使用,但可以在一个循环内的switch语句中使用。含有continue的迭代语句(或者叫循环语句),在遇到continue语句后,代码先不按照常规的从上往下的代码执行顺序执行,而是马上回到循环入口转入下一次循环。 3、break和continue语句在循环内的switch语句中使用时,是有些区别的。break是跳出本switch,switch后面的代码继续执行,而continue是不执行switch后的代码,可以理解为跳出循环,接着进入下一次循环。分别测试下面代码使用break和continue两种情况的输出,如果使用continue,你会发现程序找到Microsoft后,document.write代码不执行了,输出结果就比使用break少了一行。 转自: http://blog.csdn.net/webflash/archive/2009/06/14/4268344.aspx break表示跳出循环,continue表示结束本次循环 示例程序如下: #include "stdio.h"  void main()  {  int n,m;     for(n=1;n<=10;n++)     /*这个循环输出1  2  3  4, 在n是5的时候循环退出*/       { if(n==5)            break;          printf(" %d",n);         }     printf("/n");     for(m=1;m<=10;m++)  /*这个循环输出1  2  3  4  6  7  8  9  10 ,*/         { if(m==5)        /*在m是5的时候没有执行当次循环的其他语句,所以未输出5*/           continue;          printf(" %d",m);         }   getch();  }

     

    转自 http://www.cnblogs.com/reommmm/archive/2008/04/16/1156701.html


    最新回复(0)