在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 語句,這種方式可以提高代碼的可閱讀性。
聲明:
本文于網絡整理,版權歸原作者所有,如來源信息有誤或侵犯權益,請聯系我們刪除或授權事宜。
總結
以上是生活随笔為你收集整理的在switch语句中,case后的标号只能是什么?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: iOS16.5 准正式版更新内容汇总
- 下一篇: C语言——结构体链表,附完整示例