当前位置:网站首页>break与continue超详解!!!
break与continue超详解!!!
2022-08-04 12:06:00 【Wink向】
一、break的作用
1.只能在for、while、do…while,循环语句中和switch语句体内使用break。
2. break用于跳出一个循环或一个switch,若多个循环,即结束本层的一个循环体。
示例 1:非switch中的break
上图示例1中,循环体for " j " == 5 时遇到break后直接跳出本层循环体for “ j ”,然后继续执行外边的循环体for “ i ”,因为两个printf都是在循环体 “ j ” 中,所以这里并未打印 “Hello” 和"5"。
示例 2:switch中的break
上图示例2中,当 i == 1 时进入switch语句打印“Hello”完后遇到break,此时不在执行break后面的代码,而是跳出switch语句,继续执行循环体for后面的代码。所以当 i ==1 时只打印了"Hello",并未打印"hehe"。
二、continue的作用
1. 跳过本次循环体中剩下尚未执行的语句,立即进行下一次的本循环条件判定,可以理解为只是中止(跳过)本次循环,接着开始下一次本循环。
示例 3:非switch中的continue
上图示例3中,当循环体 “j” == 5 时,遇到continue后,是直接跳到本层循环体进行重新判断的,并未执行本层循环体全部后面的代码。所以这里并没有打印"Hello"和"5"。
示例 4:switch中的continue
如上图示例4中,当 i ==1 时,进入switch语句遇到continue,是立即跳到循环体for进行重新条件判断的,并未执行本层循环体for后面的代码。
三、两者的区别
(1)、break语句是终止本层循环(但不影响下一次循环),而continue语句并没有使本层循环终止。
(2)、当在非switch语句中遇到break时,是直接跳出本层循环体,然后继续执行本层循环体外后面的代码,当非switch语句中遇到continue时,是立即跳到本层循环体进行重新条件判断的,且并不往下执行本层循环体后面的代码。
(3)、当在switch语句中遇到break时,是跳出本层的switch语句(即所在的一个switch),而非跳出循环体,当在switch语句中遇到continue时,是立即跳到本层循环体进行重新条件判断的,且并不往下执行本层循环体后面的代码。
注意:
continue在非switch语句或switch语句中,作用和效果都是一样的。
break在非switch语句和switch语句中,作用和效果是有所区别的。
边栏推荐
猜你喜欢
随机推荐
ECCV 2022 | Towards Data Efficient Transformer Object Detectors
如何做好企业数字化转型?这10份靠谱案例收藏了(附下载)
IBM Q复制ALTER ADD COLUMN
如何用一条命令将网页转成电脑 App
DDL和DML的补充
电源测试之输出动态响应(Output Dynamic Response Test)
num_workers
使用Stream多年,collect还有这些“骚操作”?
今天15:00 | CVPR 2022 论文分享精彩继续
监督和半监督学习下的多标签分类综述
程序猿七夕礼物-如何30分钟给女友快速搭建专属语聊房
正则表达式
喂,你知道节流是什么吗?
【Qt】解决 “由于找不到Qt5Cored.dll,无法继续执行代码”(亲测有效)
Leetcode brush - structure binary tree (105. Once upon a time sequence and the sequence structure binary tree traversal sequence, 106. From the sequence with the sequence structure binary tree travers
抗积分饱和PID控制器
隐私计算与数据流通:关系、作用及功能
什么是 DevOps?看这一篇就够了!
动手学深度学习_LeNet
缓存字符流