!x==和!=的区别?

在看一本c++书时的疑问,!=表示不等于。而在解释逻辑运算符时,逻辑非的表示形式为!x==0(x不等于0)请问这和!=有什么区别。为什么不用!x=0。... 在看一本c++书时的疑问,
!=表示不等于。
而在解释逻辑运算符时,逻辑非的表示形式为!x==0(x不等于0)
请问这和!=有什么区别。
为什么不用!x=0。
展开
liuyanqiu353
推荐于2016-12-01 · 超过23用户采纳过TA的回答
知道答主
回答量:64
采纳率:0%
帮助的人:51.6万
展开全部
哇晒 这个问题看似很简单啊~~我来缕一缕~~

先给你解释 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是赋值操作后对结果取反,不和谐做法。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
心意回忆
2013-03-19 · TA获得超过9330个赞
知道大有可为答主
回答量:4142
采纳率:57%
帮助的人:3585万
展开全部
==是比较是否相等操作
= 是赋值操作
!x==0(x不等于0的话值为1,x=0的话值为0)
!x=0(因为x被赋值为0,所以非0永远为真,值永远为1)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-03-19
展开全部
! 是否定 后面的

!=表示不等于 是一个完整的 运算符
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式