continue 和 break 语句都是循环体内的终止语句,但两者的区别是:
1. continue在循环体内,略过循环体内continue下面的语句(即跳出本次循环),继续下一次循环,并不跳出整个循环体。
2. break,略过循环体内break下面的语句,跳出整个循环体。
两者的相同点是:都是只跳出本层循环体。即,一层一层的跳出。
并且:
平常我们都是把break;语句用在swtich case中,并不把continue用在这种结构中。但是,当switch case处在循环体(for、while等)中时,也可以用continue代替break,结果相同。
如果switch 有参数,且参数是一个有操作的动作,那么这个操作在default 前要运作一次。例:
main()
{
int i = 7;
while (i)
{
printf("i = [%d]\n", i);
switch (i--)
{
case 6:
printf("in case 6\n");
break;
case 3:
printf("in case 3\n");
continue;
case 1:
printf("in case 1\n");
break;
default:
printf("default i = [%d]\n", i);
break;
}
}
}
打印的结果:
i = [7]
default i = [6]
i = [6]
in case 6
i = [5]
default i = [4]
i = [4]
default i =[3]
i = [3]
in case 3
i = [2]
default i = [1]
i = [1]
in case 1