[語法] switch case
看板C_and_CPP (C/C++)作者SATSUGAI (約翰‧克勞薩二世)時間16年前 (2009/04/22 00:58)推噓6(6推 0噓 9→)留言15則, 9人參與討論串1/2 (看更多)
各位板友大家好
小弟來問個問題
因程式碼需求
switch(ch)
{
case ch1:
do something;
break;
case ch2:
do something;
break;
...
}
當ch是大寫A的時候,ch1是小寫b ch3是小寫c
ch是小寫a的時候,ch1是小寫B ch3是小寫C
我打算寫成一個switch,然後用AscII去加減處理
可是compile以後出現錯誤訊息
"error: case label does not reduce to an integer constant"
意思應該是,case後面接的要是一個const
如果還要這樣做的話
是不是非得要用if來做了呢?
因為用if敘述比較長,囉嗦
雙switch感覺有些贅述
請問還有更好的方法嗎?
感謝
--
Johannes Krauser II ◣◣ 殺 ◢◢ ◣ 強暴!強暴!強暴!強暴!強暴!強暴!
GO TO D.M.C 〈◥◣◢◤〉 ◥◣ 強暴!強暴!強暴!強暴!強暴!
デトロイト ハ▇ ▲ ▇ハ ▆▅▄▂▁▂▃▅▆▅
メタル ▏ ハ▄▃▄ハ ▏ ∵ ∵ ◤
▃▄▃ シティ▋ ノ◥ ◤ㄟ ▎ ∴ ◢
▋▊▍ ▏ ◣▂◢ ▏ φjeans1020
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.227.181.51
→
04/22 01:15, , 1F
04/22 01:15, 1F
不是轉大小寫
是大寫的情況對應小寫字元
小寫情況對應大寫字元
想在一個switch內完成
可是case後面只能接const不能更動(例如:case a+i:)
所以想問有沒有別的判斷法?
※ 編輯: SATSUGAI 來自: 61.227.181.51 (04/22 01:17)
推
04/22 01:16, , 2F
04/22 01:16, 2F
不懂樓上
※ 編輯: SATSUGAI 來自: 61.227.181.51 (04/22 01:18)
推
04/22 01:19, , 3F
04/22 01:19, 3F
→
04/22 01:38, , 4F
04/22 01:38, 4F
→
04/22 01:38, , 5F
04/22 01:38, 5F
orz
樓上誤會我的意思了
我會用switch case
只是我想更進階的做到我想要做到的事情
讓switch可以更活
case裡面的東西可變
這樣
※ 編輯: SATSUGAI 來自: 61.227.181.51 (04/22 02:02)
→
04/22 03:01, , 6F
04/22 03:01, 6F
→
04/22 03:02, , 7F
04/22 03:02, 7F
→
04/22 06:35, , 8F
04/22 06:35, 8F
→
04/22 06:40, , 9F
04/22 06:40, 9F
推
04/22 07:27, , 10F
04/22 07:27, 10F
推
04/22 09:04, , 11F
04/22 09:04, 11F
→
04/22 09:05, , 12F
04/22 09:05, 12F
推
04/22 18:29, , 13F
04/22 18:29, 13F
推
04/22 21:58, , 14F
04/22 21:58, 14F
→
04/22 22:42, , 15F
04/22 22:42, 15F
討論串 (同標題文章)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章