SWITCH語句中的case後可以是字串嗎

2021-04-24 07:19:37 字數 1338 閱讀 2547

1樓:匿名使用者

case後面接的是狀態就是你定義的switch後面那個,可以定義req在某種狀態,這是字串表示的是一種模式或狀態

2樓:匿名使用者

可以吧,不過你怎麼用單引號括起來呢?

果然不可以。。。case後面的表示式必須能轉換成整數才行,就是說需要是字元和整數。。。

3樓:高金山

不可以的

bai,比如du下zhi面的程式:

dao#include

void main() }編譯

回都通不過:答

error c2450: switch expression of type 'char *' is illegal

error c2051: case expression not constant

4樓:匿名使用者

可以是單個字元

,不可以是字串

char p;

switch(p)

是可以的;

但是你的程式裡是多個字元,也專就是字屬符串,是不可以的

switch語句中case後面可以加字串麼

c語言的switch case 語句的case 常量 能匹配字串常量嗎?

5樓:匿名使用者

c語言的switch case 語句的case不能匹配字串常量,只能匹配整型類常量,如int short long char.

switch用法格式:

switch ( 表示式)

說明:break 表示退出

case後面只能跟乙個值(加冒號:),而不能是乙個表示式switch(表示式) 後面沒有分號(;){}前後沒有分號(;)

default語句可以出現在任何位置,但建議寫到最後,表示除去case匹配之外的其它情況。也可以沒有default語句

6樓:9號豬頭

不可以匹配字串長量的.最大可以匹配乙個int型的變數或常量.

switch 裡面一般是填變數名.

大概是這樣

int a;

switch(a)

7樓:寺地雅心

應該是不可以的。

但是你可以多增加一步,在swich前呼叫compare函式,比較你得到的字串和你的case中的字串,得到-1,0,1再進行swich。

不過我想這樣應該不會方便,還不如用if...else if...else來的快哦!

swich語句的侷限性還是蠻大的,處理這種複雜資料、複雜邏輯的時候最好用if~

switch語句中case1執行完輸入2執行case2該怎麼辦

case 1 執行 輸入,這個地方不寫break case 2 break 在c c 裡面,你可以在case1執行的 段最後的break去掉,這樣執行完case1之後就會執行case2 根據switch的結果,看它是符合case1還是case2 符合哪乙個就執行那個,另乙個不管 switch語句中c...

請問c語言中switch中的case的冒號後面能加程式塊嗎?初學,望大神指教

你好!這樣做是可以的,注意書寫格式,便於以後自己閱讀回程式方便 include int main break 當然可以bai switch a 因為要碰到break才能跳出,所以還有這種用答法switch a case後面是整型或字元型常量表示式,因此程式塊是不可取的。希望能採納 可以,但是不建議這...

有關switch語句的問題

樓上回答有誤,如果default放在第一排,那會直接執行default。照樣執行default語句後的語句序列.switch 語句 是乙個多通道開關,無論 default 放在 何處,都要按次序檢查 case 語句,case 全沒通過,才走 default。滿足 case 條件的地方,就是乙個入口,...