continue、break、return用法及区别

1、return 语句的作用

  • return 从当前的方法中退出,返回到该调用的方法的语句处,继续执行。
  • return 返回一个值给调用该方法的语句,返回值的数据类型必须与方法的声明中的返回值的类型一致。
  • return后面也可以不带参数,不带参数就是返回空,其实主要目的就是用于想中断函数执行,返回调用函数处。

2、break 语句的作用

  • break在循环体内,强行结束循环的执行,也就是结束整个循环过程,不在判断执行循环的条件是否成立,直接转向循环语句下面的语句。
  • break出现在循环体中的switch语句体内时,其作用只是跳出该switch语句体。

一般形式: 

break;

注意:break语句不能用于循环语句和switch语句之外的任何其他语句中。

比如:

unsigned char i, j=50;

for(i=0;i<100;i++)

{

      if(i>j)

break;

}

j=i;

当程序循环到i=51时,执行break语句,跳出for循环,开始执行j=i这条语句。

3、continue 语句的作用

  • 终止本次循环的执行,即跳过当前这次循环中continue语句后尚未执行的语句,接着进行下一次循环条件的判断。

接着进行下一次循环条件的判断。

一般形式: 

         continue;

比如:

unsigned char i, j=50;

for(i=0;i<100;i++)

{

      if(i>j)

continue;

      j=i;

}

当程序循环到i=51时,执行continue语句,结束本次循环,即不执行下面的j=i语句,而是执行i++,即i=52,故i<100,循环的条件成立,循环继续执行,直到i<100的条件不成立,for循环才终止。

总之: 

continue语句只结束本次循环,而不是终止整个循环的执行。 

break语句则是结束整个循环过程,不再判断执行循环的条件是否成立。

1.continue只结束上一级本次循环,针对只是for、while两大类循环语句。

2.break结束上一级整个循环语句,可以是for while,还可以为swtich.

 

下面大家可以具体的看一下例子,可能会更清晰一点:

  1. #include <stdio.h>
  2. int main()
  3. {
  4.     int i = 5,= 0;
  5.     while(i--)
  6.     {
  7.         if(== 3)
  8.      // return;
  9.      // break;
  10.         continue;
  11.         else if(== 1)
  12.             n = 6;
  13.     }
  14.     n = n + 5;
  15.     printf("i=%d\n",i);
  16.     printf("n=%d\n",n);
  17.         return 0;    
  18. }

 当运行continue时,结果为:

  1. i=-1
  2. n=11

当运行break时,结果为:

  1. i=3
  2. i=5

当运行return时,没有结果,说明当执行i==3是已经带出主函数,不会执行下面的语句

//break是结束整个循环体,continue是结束单次循环

比方说:

while(x++ < 10)

{

    if(x == 3)

    {

        break;

    }

    printf("%d\r\n", x);

}

结果是输出  1 2   就退出了整个while循环

但是如果使用continue

while(x++ < 10)

{

    if(x == 3)

    {

        continue;

    }

    printf("%d\r\n", x);

}

结果是:1 2 4 5 6 7 8 9 10  可见他仅仅是不输出3,因为他结束了本次循环

 

猜你喜欢

转载自blog.csdn.net/qq_30460949/article/details/89069813
今日推荐