Re: [問題] case後面接括弧?

看板C_and_CPP (C/C++)作者 (Kevin)時間16年前 (2009/03/20 18:51), 編輯推噓0(001)
留言1則, 1人參與, 最新討論串2/3 (看更多)
※ 引述《micklin (離鄉背井的米克)》之銘言: : 在某本書上看到這樣的例子 : switch(Number){ : case(1,3,5):{ : OddNumber=OddNumber+1; : OddSum=OddSum+Number; : } : break; : case(2,4,6):{ : EvenNumber=EvenNumber+1; : EvenSum=EvenSum+Number; : } : break; : default:printf("Error Input"); : } : 我的問題是, case後面可以利用括弧的方法把相關的值放在一起嗎? : 這個程式碼我用gcc跑, compile會過, 但是不管Number的值為何, : 結果都是印出Error Input, 也就是default的部份. : 謝謝! compiler 會逐一評估逗號運算子所隔開的運算元 並且傳回最後一個運算元的值 你可以試著int a=(1,2,3); 把a印出來會發現是3 也就是說case(1,3,5) 其實是case 5 case(2,4,6)其實是6 關於逗號運算子是憑印象寫 有錯請指正 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.136.185.122

03/22 21:58, , 1F
感謝回答!!
03/22 21:58, 1F
文章代碼(AID): #19mtKK0L (C_and_CPP)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 2 之 3 篇):
文章代碼(AID): #19mtKK0L (C_and_CPP)