本文共 447 字,大约阅读时间需要 1 分钟。
switch不是循环语句,但如果不在每一个case语句之后加上break,switch语句会找到符合条件的第一个分支语句,然后往下运行包括default语句在内的所有语句。
switch语句原理是跳转到caseX位置执行剩下所有的语句(包括其他case里面的),直到最后或者遇见break为止。因此在每一条语句最后+break即可。
因此不加break的话将会执行跳转到符合条件的case本身以及以下所有的语句。#include<stdio.h>
int test(char a) { switch(a){ case 'a': printf("a\n"); case 'b': printf("b\n"); case 'c': printf("c\n"); default: printf("exit\n"); break; } } int main(int argc, const char *argv[]) { test('b'); return 0; }那么会输出:
b,c,exit
转载地址:http://cgfab.baihongyu.com/