【C语言】case 关键字

Source

🚩write in front🚩   

🔎大家好,我是謓泽,希望你看完之后,能对你有所帮助,不足请指正!共同学习交流🔎
🏅2021年度博客之星物联网与嵌入式开发TOP5~2021博客之星Top100~阿里云专家博主 & 星级博主~掘金⇿InfoQ创作者~周榜120﹣总榜998⇿全网访问量30w+🏅
🆔本文由 謓泽 原创 CSDN首发🙉如需转载还请通知⚠
📝个人主页-謓泽的博客_CSDN博客 📃
🎁欢迎各位→点赞👍 + 收藏⭐️ + 留言📝​
📣系列专栏-【C语言】关键字_謓泽的博客-CSDN博客🎓
✉️我们并非登上我们所选择的舞台,演出并非我们所选择的剧本📩

③ case ⇿ 匹配

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

①-常量指的是其程序运行过程当中不可以改变的量。

②-字符常量以及字符变量。

③-表达式将同类型的数据(如常量、变量、函数等)用运算符号按一定的规则连接起来的有意义的式子称为表达式。

⒉作用⇢这个 case 都是配合作用于 switch 关键字的。case 只要匹配上,则其他 case 不再进行匹配,直接顺序执行所有的代码是执行 case 后面的,直到遇到 break 或者整个结束。通常我们在写程序的时候会在每条 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 枚举类型进行使用的。注:枚举在这个系列博主也会详细的说明的,之所以枚举能够使用是因为枚举它的全称之为(枚举常量)