switch语句
来自cppreference.com
根据整型参数的值执行代码。
当需要根据一个整型值选择许多代码分支中的一个或多个执行时使用。
目录 |
[编辑] 语法
switch ( expression ) {
|
|||||||||
[编辑] 解释
expression应该是一个能够转换为整型值的表达式。
所有的constant_expression必须是能够转换为整型值的常量表达式,且该值在这个switch
语句中唯一。
如果expression计算后得到一个值并等于某个constant_expressioni,statementi(若出现)和之后所有语句(包括default_statement,若出现)将会被执行。如果expression的值不匹配任何的constant_expression,default_statement若存在则会被执行。
应注意,如果不希望后续语句的执行,可以使用break语句。这时,switch
的执行将会被终止。
[编辑] 关键字
[编辑] 示例
#include <stdio.h> void func(int x) { printf("func(%d): ", x); switch(x) { case 1: printf("case 1, "); case 2: printf("case 2, "); case 3: printf("case 3.\n"); break; case 4: printf("case 4, "); case 5: printf("case 5, "); default: printf("default.\n"); } } int main() { for(int i = 1; i < 10; ++i) func(i); }
输出:
func(1): case 1, case 2, case 3. func(2): case 2, case 3. func(3): case 3. func(4): case 4, case 5, default. func(5): case 5, default. func(6): default. func(7): default. func(8): default. func(9): default.