!x==和!=的区别?

哇晒 这个问题看似很简单啊~~我来缕一缕~~先给你解释 x!=0 和 !x==0 的不同第一个表达式:是将x和0直接进行值得对比,看是否相等;第二个表达式:是将x取非,之后再将取非的结果与0进行比较;这两个表达式的运算过程不一样,但是得出的结果是一样的。就好像a+b-c 和 a-c+b 一样,结果意义一样,计算过程不一样。。能明白吗~~你要记住!=这个运算符和==,<=,>=是一类的,属于关系运算符,是进行数值比较的,他并不能看做是!(逻辑非)和=(赋值运算符)的组合,两个!符号是不同意义的。然后看最后一个问题 !x=0 这个表达式 就跟上两个表达式完全不同了,上面两个是比较,然后得出true或者false的比较结果,这个是赋值表达式啦,是对X进行赋值啦,对X的值进行了改变。不明白再问我吧~~
!x==0等价于(!x)==0,看明白了吗?运算优先级,!是先取反。两个意义是不一样的。C里面0是非,所以无法用一个值来表示一个真值,所以无法直接判断一个值是不是真,只能判断它的取反是不是非,这就是!x==0而!x=0是赋值操作后对结果取反,不和谐做法。
文章标签:

本文链接:https://www.u1e.cn/baike/a/32bf07b2f941ddc4522f5df7 [复制]

猜你喜欢

歇后语大全

还没有人回应过