一般必须在case语句结尾添加break语句。因为一旦通过switch语句确定了入口点,从入口点的case语句开始一直往下执行,除非遇到关键字break,否则会继续执行满足这个case之后的其他case语句,直到switch结束或者遇到break为止。如果在switch中省略了break语句,那么匹配的case值后面的所有情况(包括default情况)都会被执行。比如:
#include <iostream>
using namespace std;
int main()
{
int a;
for (a = 0; a < 3; a++)
{
switch (a)
{
case 0:
printf("a=%d\n", a);
case 2:
printf("b=%d\n", a);
default:
printf("others=%d\n", a);
}
}
return 0;
}
加了break以后:
#include <iostream>
using namespace