-1
Q
開關,案件在C
A
回答
1
A switch
聲明只不過是一些優化選項而已。任何switch語句都可以作爲if...then...else if...
語句來實現。
在C的優化爲整數且它不能處理字符串
從而爲串A女巫聲明將是一個if...then...else if...
語句中使用strcmp
,例如betwee一個switch
聲明
if (strcmp(a,"hello")==0) {
//case "hello"
}
else if (strcmp(a,"world")==0) {
// case "world"
}
else {
// default
}
一個區別和if..then..else
說法是,後者並不知道「落通」,它不能被模擬,除非使用goto
(這是鼓勵)。
對你的問題的評論也暗示比蠻力字符串比較更高級的方法。所有這些方法都嘗試使用字符串的一些獨特特徵來轉化爲可以實施switch
的某個數字。
相關問題
- 1. 案例/開關在C不工作
- 2. 不從開關案件
- 3. 詮釋開關案件
- 4. C - 多個案例號的開關
- 5. LINQ-C中的選擇開關案例#
- 6. 案例在保護開關
- 7. XSL開關案例
- 8. Java的開關撞倒兩個案件
- 9. Java的開關匹配多個案件
- 10. 開關/案件沒有中斷DllMain
- 11. 做開關/案件是否貫穿?
- 12. jQuery的 - 開關罩到開關罩 - 清除開關案例
- 13. 字符數組上的C/C++開關案例
- 14. onMarkerClick使用開關案例
- 15. PHP開關案例問題
- 16. 複雜開關案例SQL
- 17. PHP案例開關(效率)
- 18. 布爾開關案例
- 19. PHP開關/案例json_encode
- 20. 開關案例程序
- 21. PHP開關案例問題
- 22. 開關/案例問題
- 23. 開關...案例不工作
- 24. 按鈕開關案例
- 25. 爲什麼開關語句在案例
- 26. 替代開關案例在android
- 27. 在條件內打破一個案例(在一個開關中)
- 28. Android開發開關案例問題
- 29. 黑莓10開發開關案例
- 30. 在多個案例運行功能的開關案例?
要麼計算在case-statements中使用的唯一序號,要麼使用if語句。 –
你不能,但你可以針對關鍵字數組測試該單詞,並使用匹配的索引作爲開關案例。或者,您可以將具有唯一首字母的單詞用於開關盒。 –
Chek [this](https://stackoverflow.com/questions/4014827/best-way-to-switch-on-a-string-in-c)out。 –