既然true
false
C 中没有布尔类型,那么表达式的x == y
计算结果是什么,什么时候为真,什么时候为假?
如果它的计算结果分别为 1 和 0,它们是整数,为什么我们不能case
在switch
语句中使用s这样的表达式?
这背后的正确原因是:
x==y
,那么多个 case很有可能最终具有相同的值,即,无论何时,我们都会得到 1,因此多个这样的 case 将评估为 1 或 0;这在 switch 语句中是不允许的。原因是不是类型的x==y
,但事实上case
需要一个常数。x==y
通常不是常数。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句