【发布时间】:2015-06-24 21:40:11
【问题描述】:
如何在不使用“if”的情况下将 C 中的字符与其他字符进行比较 有大量的“||”? 例如,假设我有一个名为“i”的角色,我想将其与其他 8 个没有任何联系的角色进行比较,如果“i”至少等于这 8 个角色中的一个,则表达式为真。 像这样的:
if(i == c1 || i == c2 || i == c2 ........){ /* do stuff */}
但在大型应用程序中,这些比较很多,而不仅仅是 3 或 8。 有没有一种聪明而快速的方法来实现这样的事情,而不是最终得到丑陋的代码?提前谢谢你。
【问题讨论】:
-
如果 i 是可变的,请删除那些''。还有c1是什么?
-
您可以将c1,c2,,,,,,,cn变量存储在一个数组中。然后循环比较。
-
使用
switch声明。 -
所有变量都是字符@giorgi
-
@NafeeurRahman 谢谢!我试试看
标签: c if-statement character logical-operators