【C语言】case 关键字

120 阅读2分钟

携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第13天,点击查看活动详情

👋『大家好,我是謓泽,希望你看完之后,能对你有所帮助,不足请指正!共同学习交流>』
✔「life motto」⇢ 种一棵树最好是十年前⇿其次是现在👌
📝<juejin>个人主页謓泽 的个人主页 - 文章 - 掘金 (juejin.cn)
📚<系列专栏>⇥C语言关键字🍻 - 謓泽的专栏 - 掘金 (juejin.cn)
🏆2021年度博客之星物联网与嵌入式开发TOP5 2021博客之星Top100 阿里云专家博主^星级博主 CSDN⇿掘金⇿InfoQ[创作者]

⛳⛳⛳这是一个全新的专栏系列围绕着C语言当中关键字进行详细深度讲解,保证小白看了也能看的懂哟🌊🌊🌊

case ⇿ 匹配

⒈描述⇢case 通常用作于 switch 分支语句当中,case 后面是接常量表达式以及字符型常量。

⒉作用⇢这个 case 都是配合作用于 switch 关键字的。case 只要匹配上,则其他 case 不再进行匹配,直接顺序执行所有的代码是执行case后面的,直到遇到 break 或者整个结束。

⒊注意⇢在 case 表达式的条件后面有一个冒号":",在编写程序的时候千万不要忘记哟。

代码示例如下👇

#include<stdio.h>
int main(void)
{
    switch(1) 
    {
        case 1 : printf("1"); // 打印“ 1 ”
        case 2 : printf("2"); // 然后打印“ 2 ”  继续
    }
    return 0;
}

📑代码解析如下👇

㈠表达式求值为等于一个 常量表达式 在转换到 表达式 的提升类型后的值,则转移控制到标号为该 常量表达式 的语句。

㈡若 表达式 求值为不匹配任何 case 标号的值,而存在 default: 标号,则转移控制到标号为 default: 的语句。

㈢若表达式求值为不匹配任何 case: 标号的值,且不存在 default: 标号,则不执行 switch 体的任何部分。

🍊注→必须要有break语句它才能够退出当前的case语句,不然就会执行case下面的语句。

🍈说明→case语句的语法规则

case 10: printf("..."); break;  //正确
case 8+9: printf("..."); break;  //正确
case 'A': printf("..."); break;  //正确,字符和整数可以相互转换
case 'A'+19: printf("..."); break;  //正确,字符和整数可以相互转换
case 9.5: printf("..."); break;  //错误,不能为小数
case a: printf("..."); break;    //错误,不能包含变量
case a+10: printf("..."); break;  //错误,不能包含变量

🍋细节→在 [case] 语句表示条件后有一个冒号" : "我们在编写程序的时候不要忘记。

🍅拓展知识点⇢switch case 在有些场景下是可以配合 enum 枚举类型进行使用的。