switch语句的break不能就不写吗?

来源:百度知道 编辑:UC知道 时间:2024/06/30 00:00:00
我是这么想的,switch语句在不同的匹配情况下都会用break语句结束一种匹配情况的执行语句; 那么如果这样的话,不如把编译器在一点上改了,默认不用break就可以实现和当前用break一样的功能,不就减少了语言代码的编写量了吗?
谢谢大家指教!

你忽略了switch的特殊用法
当 多种case 执行一种操作时你怎么办?

实际上case只是个入口,如果没有break;会从入口处将后面所有的case全部执行一次,例如在以下程序中
switch(x)
{
case 1:
case 2:y=2;break;
case 3:break;
}
当x=1或2时,y都为2
这中用法还是有需求的~~~`

这是规则,是为了避免C中经常出现的错误而规定的,必须在每一个CASE后加上break,
如果不加break,会让那些从C,C++等程序员有误会

而且规则制定了,不是说改就能改的,不然你一个意见,别的程序员一人一个意见,那不用做程序了,天天就等着适应语法吧。

简单一句话,一个规则不可能让每个人满意,让大部分人觉得合适就可以了。

C#中必须写,否则编译时报错。这是和C/C++中不通的地方。

ls有道理