
!x==和!=的区别?
在看一本c++书时的疑问,!=表示不等于。而在解释逻辑运算符时,逻辑非的表示形式为!x==0(x不等于0)请问这和!=有什么区别。为什么不用!x=0。...
在看一本c++书时的疑问,
!=表示不等于。
而在解释逻辑运算符时,逻辑非的表示形式为!x==0(x不等于0)
请问这和!=有什么区别。
为什么不用!x=0。 展开
!=表示不等于。
而在解释逻辑运算符时,逻辑非的表示形式为!x==0(x不等于0)
请问这和!=有什么区别。
为什么不用!x=0。 展开
4个回答
展开全部
哇晒 这个问题看似很简单啊~~我来缕一缕~~
先给你解释 x!=0 和 !x==0 的不同
第一个表达式:是将x和0直接进行值得对比,看是否相等;
第二个表达式:是将x取非,之后再将取非的结果与0进行比较;
这两个表达式的运算过程不一样,但是得出的结果是一样的。
就好像a+b-c 和 a-c+b 一样,结果意义一样,计算过程不一样。。能明白吗~~
你要记住!=这个运算符和==,<=,>=是一类的,
属于关系运算符,是进行数值比较的,
他并不能看做是!(逻辑非)和=(赋值运算符)的组合,两个!符号是不同意义的。
然后看最后一个问题 !x=0 这个表达式 就跟上两个表达式完全不同了,
上面两个是比较,然后得出true或者false的比较结果,
这个是赋值表达式啦,是对X进行赋值啦,对X的值进行了改变。
不明白再问我吧~~
先给你解释 x!=0 和 !x==0 的不同
第一个表达式:是将x和0直接进行值得对比,看是否相等;
第二个表达式:是将x取非,之后再将取非的结果与0进行比较;
这两个表达式的运算过程不一样,但是得出的结果是一样的。
就好像a+b-c 和 a-c+b 一样,结果意义一样,计算过程不一样。。能明白吗~~
你要记住!=这个运算符和==,<=,>=是一类的,
属于关系运算符,是进行数值比较的,
他并不能看做是!(逻辑非)和=(赋值运算符)的组合,两个!符号是不同意义的。
然后看最后一个问题 !x=0 这个表达式 就跟上两个表达式完全不同了,
上面两个是比较,然后得出true或者false的比较结果,
这个是赋值表达式啦,是对X进行赋值啦,对X的值进行了改变。
不明白再问我吧~~

2024-04-12 广告
莱默尔{e+l}是自动化领域的一股创新力量,专注于提供前沿的技术解决方案。我们深知,在快速发展的工业4.0时代,企业需要高效、精准的设备来提升生产效率和产品质量。莱默尔{e+l}正是致力于满足这一需求,通过不断优化产品性能、提升服务质量,助...
点击进入详情页
本回答由上海莘默提供
2013-03-19
展开全部
!x==0等价于(!x)==0,看明白了吗?运算优先级,!是先取反。
两个意义是不一样的。C里面0是非,所以无法用一个值来表示一个真值,所以无法直接判断一个值是不是真,只能判断它的取反是不是非,这就是!x==0
而!x=0是赋值操作后对结果取反,不和谐做法。
两个意义是不一样的。C里面0是非,所以无法用一个值来表示一个真值,所以无法直接判断一个值是不是真,只能判断它的取反是不是非,这就是!x==0
而!x=0是赋值操作后对结果取反,不和谐做法。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
==是比较是否相等操作
= 是赋值操作
!x==0(x不等于0的话值为1,x=0的话值为0)
!x=0(因为x被赋值为0,所以非0永远为真,值永远为1)
= 是赋值操作
!x==0(x不等于0的话值为1,x=0的话值为0)
!x=0(因为x被赋值为0,所以非0永远为真,值永远为1)
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-03-19
展开全部
! 是否定 后面的
!=表示不等于 是一个完整的 运算符
!=表示不等于 是一个完整的 运算符
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询