鱼C论坛

 找回密码
 立即注册
查看: 2643|回复: 4

[已解决]break到底是跳出该层循环 还是跳出该层代码块({})呢?

[复制链接]
发表于 2021-3-19 19:43:50 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
主要是在用switch的时候突然想到这一点,因为switch中的break不就是跳出switch吗,switch不是循环呀,那就是说break在这里跳出的是代码块吧。而break的官方解释是跳出某层循环。那么问题来了,break究竟是跳出代码块还是跳出循环呢,还是两者分情况而定呢?
最佳答案
2021-3-19 19:48:03
本帖最后由 昨非 于 2021-3-19 19:57 编辑

你都说了break跳出switch了何必纠结个这呢

主要在于switch-case语句的每个case分支是分不开的,
就是执行了上一条case,后面的一溜烟儿全给你跑完了,所以引入break来达到分支语句的效果
你要真纠结switch和循环体巴拉巴拉,那咱也说不清哈
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2021-3-19 19:48:03 | 显示全部楼层    本楼为最佳答案   
本帖最后由 昨非 于 2021-3-19 19:57 编辑

你都说了break跳出switch了何必纠结个这呢

主要在于switch-case语句的每个case分支是分不开的,
就是执行了上一条case,后面的一溜烟儿全给你跑完了,所以引入break来达到分支语句的效果
你要真纠结switch和循环体巴拉巴拉,那咱也说不清哈
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-3-19 20:00:40 | 显示全部楼层
昨非 发表于 2021-3-19 19:48
你都说了break跳出switch了何必纠结个这呢

主要在于switch-case语句的每个case分支是分不开的 ...

反正遇到break,有switch就跳switch 没switch就跳最近的循环,这样理解没毛病吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-3-19 20:02:18 From FishC Mobile | 显示全部楼层
如果是循环的话,假设是多层循环的话,那么break只能跳出离它最近的一层而已
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-3-19 20:04:51 | 显示全部楼层
SeeFire 发表于 2021-3-19 20:00
反正遇到break,有switch就跳switch 没switch就跳最近的循环,这样理解没毛病吧

只在这两种情况下应该没问题
遇到别的问题再分析呗,具体问题具体分析是马克思主义的活的灵魂
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-10 02:47

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表