首页后端开发ASP.NET在switch语句中,case后的标号只能是什么?

在switch语句中,case后的标号只能是什么?

时间2024-02-01 00:46:03发布访客分类ASP.NET浏览311
导读:收集整理的这篇文章主要介绍了在switch语句中,case后的标号只能是什么?,觉得挺不错的,现在分享给大家,也给大家做个参考。在swITch语句中,case后的标号只能是常量表达式。在一个特定的switch语句中,每个case常量都必须具...
收集整理的这篇文章主要介绍了在switch语句中,case后的标号只能是什么?,觉得挺不错的,现在分享给大家,也给大家做个参考。

在swITch语句中,case后的标号只能是常量表达式。在一个特定的switch语句中,每个case常量都必须具有独一无二的值,不可以重复。但是switch语句可以包含多个case标签。

switch语句用于基于不同条件执行不同动作。

语法格式:

switch (变量表达式){
    case 常量1:   语句;
    break;
    case 常量2:   语句;
    break;
    case 常量3:   语句;
    break;
    ...case 常量n:   语句;
    break;
    default:   语句;
    break;
}
    

switch语句是一个条件选择语句,找到相同的case值做为执行后面的程序入口;若所有的case都不满足,则找default入口;若未找到default入口则退出整个switch语句。

case 后的常量指的是常量表达式。在一个特定的 switch 语句中,每个 case 常量都必须具有独一无二的值,不可以重复。但是 switch 语句可以包含多个 case 标签。

default 标签是可选的,可以放在 switch 语句体内任何位置。如果没有 default 标签,并且没有任何 case 常量符合 switch 语句控制表达式的计算结果,那么 switch 语句体中的语句都不会执行。在这种情况下,程序流会转而执行 switch 语句体后面的语句。

switch 语句体通常是一个从 case 标签开始的语句块。如果在第一个 case 标签之前有语句,这些语句并不会被执行。

C 语言的标签只用于标识程序流可能跳转到的目的地。这些标签本身对程序没有影响。因此,从 switch 跳转到第一个符合条件的 case 标签之后,程序会继续顺序执行,不受其他标签的影响。

如果在这个符合条件的 case 标签之后,其他 case 标签中的语句应该被忽略,就应该在所执行的最后一条语句后,加上 break 语句,使得程序流直接跳转到 switch 语句体的后面。

如果需要在 switch 语句内声明变量,那么这些变量应该被声明在嵌套的内部语句块中,如下所示:

switch ( x ){
   case C1: {
     int temp = 10;
    // 声明temp,仅为该case使用              /* ... */            }
                break;
   case C2:            /* ... */}
    

在 switch 表达式中,应用了整数提升。case 常量被转换为匹配 switch 表达式计算结果的类型。

也可改用 else if 语句来实现 switch/case 语句效果。但是如果依据一个整数表达式的值来判断程序流,则应该使用 switch/case 语句,这种方式可以提高代码的可阅读性。

推荐:《c语言教程》

以上就是在switch语句中,case后的标号只能是什么?的详细内容,更多请关注其它相关文章!

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!

c语言switch

若转载请注明出处: 在switch语句中,case后的标号只能是什么?
本文地址: https://pptw.com/jishu/594698.html
jQuery实现鼠标拖动图片功能 字符数组表示字符串的注意事项是什么

游客 回复需填写必要信息