在 switch 语句中,如果没有给出 break,为什么所有语句都在 true 语句之后执行?

In switch statements, why do all statements get executed after a true statement if break is not given?

switch/case语句中,case语句是为了检查条件,为什么要执行不正确的语句呢?如果未给出 break,即使它继续执行所有情况直到程序结束,case 语句也不会检查条件。它的内部工作方式与 if/else 语句一样吗?如果不是,那么它在内部是如何工作的? 语言:C

不,案例标签(不是声明)不检查任何条件。事实上,它根本不做任何事情(请注意如何连续处理多个案例?)并且不生成任何代码。进入开关后,执行跳转到匹配的案例。就是这样。一旦你进入街区,标签就不会做任何事情,但是 break 会让你出去。