C语言编程中=和==;&和&& 用法和意义上有什么区别?

 我来答
snack42
2017-11-01 · TA获得超过1531个赞
知道小有建树答主
回答量:409
采纳率:62%
帮助的人:61.9万
展开全部
=:赋值运算符,将符号右边的值赋给左边的变量。
==:关系运算符,就是用来比大小的,返回值为1或0,1为真即符号两边相等;0为假即符号两边不相等。
&:按位与,二进制由01组成,一个0或1都表示一位,按位与就是把每一个01都进行与运算。比如01001011&11010010=11011011
&&:逻辑与,与逻辑或、逻辑非共同构成逻辑关系。如:if(a>1&&a<10)表示a大于1且a小于10,即a在1到10之间。
=与==有很明显的区别,很容易看得出来,这里不多说,但按位与和逻辑与的区别并不明显。
按我的理解,按位与主要针对的是二进制数每位之间的与操作,比如上面解释中举的例子。但有时不都用二进制表示按位与操作,如2&3,其实它暗地里有一个转换的过程,就是把2和3都转换成了0010和0011,得到的结果也不是布尔值,而是2(0010)。而逻辑与是真与假的与操作,还是上面的例子,假如a=5,那么a>1为真,a<10为真,根据逻辑与的运算规则,真与真的结果为真。
zzh1002205425
2017-11-01 · 超过26用户采纳过TA的回答
知道答主
回答量:52
采纳率:90%
帮助的人:33.3万
展开全部

您好!

  • = 与 ==

‘=’为赋值运算符,例如

a = b //将b的值赋给a

‘==’为判断语句中使用的符号,例如

if(a == b) //判断a与b是否相等,如果相等,if条件成立,进入if下的语句
  • & 与 &&

‘&’为位运算符,‘&&’为逻辑运算符

例如

c1 = 0x10 &  0x11 //按位相交,1&1=1,1&0=0,则c1的值为0x10
c2 = 0x10 && 0x11 //逻辑上,除0x00以外的都视为1,所以0x10和0x11都是逻辑1,则c2值为1

若想进一步了解可以百度“逻辑运算符和位运算符”

望采纳!

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
bd9006
2017-11-01 · TA获得超过2.5万个赞
知道大有可为答主
回答量:4.8万
采纳率:63%
帮助的人:1.6亿
展开全部
前面一个是位运算、后面一个是逻辑运算,,,,,,,,,完全不一样的
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
老黄知识共享
高能答主

2021-05-04 · 有学习方面的问题可以向老黄提起咨询。
老黄知识共享
采纳数:5109 获赞数:26722

向TA提问 私信TA
展开全部

c++语言是c语言发展起来的,所以继承了c语言几乎所有的特点,但c++语言又有自己的个性。c语言是一种面向过程的编程语言,而c++主要是面向过程的,因此c++有类的概念,而c语言就没有。c++的功能强大,编译器复杂,适合高端程序的设计和编辑,c语言的编译器简易,适合低端程序。

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

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式