您的位置:首页 > 产品设计 > UI/UE

continue、break、return的区别

2015-03-03 22:39 771 查看
原文转自:http://blog.chinaunix.net/uid-27007072-id-3345092.html

前面我说过return和exit的区别,如果感兴趣的话可以瞅瞅。今天看到内核的代码时突然被continue、break、return这三个关键字给搞晕了,所以就写了个例子调试了一下,才弄明白了,和大家分享一下,估计有人跟我一样有时就被弄糊涂了。

1、return 语句的作用
(1) return 从当前的方法中退出, 跳出整个函数模块,返回到该调用的方法的语句处,继续执行。return是函数返回,没有商量的跳出函数,回到调用此函数的地方。
(2) return 返回一个值给调用该方法的语句,返回值的数据类型必须与方法的声明中的返回值的类型一致。
(3) return后面也可以不带参数,不带参数就是返回空,其实主要目的就是用于想中断函数执行,返回调用函数处。
2. continue 语句的作用

(1)break在循环体内,强行结束循环的执行,也就是结束整个循环过程,不在判断执行循环的条件是否成立,直接转向循环语句下面的语句。

(2)当break出现在循环体中的switch语句体内时,其作用只是跳出该switch语句体。

3.continue 语句的作用

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

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

#include <stdio.h>

int main()

{

int i = 5,n = 0;

while(i--)

{

if(i == 3)

// return;

// break;

continue;

else if(i == 1)

n = 6;

}

n = n + 5;

printf("i=%d\n",i);

printf("n=%d\n",n);

return 0;

}

当运行continue时,结果为:

i=-1

n=11

当运行break时,结果为:

i=3

i=5

当运行return时,没有结果,说明当执行i==3是已经带出主函数,不会执行下面的语句。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: