新手求助一个简单的问题
('9'>=ch&&ch>='0') 和('9'>=ch>='0') 是一个意思吗?编译出来结果不相同,但是不同的原因是什么?
向各位大神求教
因为不同的编译器对'9'>=ch>='0'的解释可能不同
可能是
'9'>=ch&&ch>='0'
也有可能是
ch>='0'&&'9'>=ch
或者其他可能
所以,不要写这样可能产生歧义的写法 BngThea 发表于 2017-12-11 17:28
因为不同的编译器对'9'>=ch>='0'的解释可能不同
可能是
'9'>=ch&&ch>='0'
可是这不都是一个意思吗?{:5_94:} 当然有区别,请百度 与逻辑短路
再说了,还有可能被解释为其他含义 vc环境下只能分开写,不能a<x<b;系统只会依据自左向右运算,若a<x则是1,在于b相比。性质与你要表达的截然不同。
如果哪本教材上这么写,建议把这本书丢了吧。映像中&&的优先级是小于关系运算符的,这么说明白了么? ('9'>=ch>='0')这是错的 '9'>=ch>='0'这种写法我都不能正常运行你还可以编译溜
页:
[1]