!x==和!=的区别?

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

先给你解释 x!=0 和 !x==0 的不同

第一个表达式:是将x和0直接进行值得对比,看是否相等;
第二个表达式:是将x取非,之后再将取非的结果与0进行比较;
这两个表达式的运算过程不一样,但是得出的结果是一样的。
就好像a+b-c 和 a-c+b 一样,结果意义一样,计算过程不一样。。能明白吗~~

你要记住!=这个运算符和==,<=,>=是一类的,
属于关系运算符,是进行数值比较的,
他并不能看做是!(逻辑非)和=(赋值运算符)的组合,两个!符号是不同意义的。

然后看最后一个问题 !x=0 这个表达式 就跟上两个表达式完全不同了,
上面两个是比较,然后得出true或者false的比较结果,
这个是赋值表达式啦,是对X进行赋值啦,对X的值进行了改变。

不明白再问我吧~~
Sievers分析仪
2024-10-13 广告
是的。传统上,对于符合要求的内毒素检测,最终用户必须从标准内毒素库存瓶中构建至少一式两份三点标准曲线;必须有重复的阴性控制;每个样品和PPC必须一式两份。有了Sievers Eclipse内毒素检测仪,这些步骤可以通过使用预嵌入的内毒素标准... 点击进入详情页
本回答由Sievers分析仪提供
匿名用户
2013-03-19
展开全部
!x==0等价于(!x)==0,看明白了吗?运算优先级,!是先取反。

两个意义是不一样的。C里面0是非,所以无法用一个值来表示一个真值,所以无法直接判断一个值是不是真,只能判断它的取反是不是非,这就是!x==0

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

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

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式