什么是复合算术赋值符,求复合算术赋值运算符的详解

 我来答
丰楚屠香
2020-02-26 · TA获得超过3.6万个赞
知道大有可为答主
回答量:1.4万
采纳率:33%
帮助的人:876万
展开全部
在赋值运算符当中,有一类C/C++独有的复合赋值运算符。它们实际上是一种缩写形式,使得对变量的改变更为简洁。
Total=Total+3;
它的意思是本身的值加3,然后在赋值给本身。为了简化,上面的代码也可以写成:
Total+=3;
同样,x*=y+7
等价于x=x*(y+7) r%=p
等价于r=r%p
复合赋值运算符有下列这些:
符号
功能
+=
加法赋值
-=
减法赋值
*=
乘法赋值
/=
除法赋值
%=
模运算赋值
<<=
左移赋值
>>=
右移赋值
&=
位逻辑与赋值
|=
位逻辑或赋值
^=
位逻辑异或赋值
那么看了上面的复合赋值运算符,有人就会问,到底Total=Total+3;与Total+=3;有没有区别?答案是有的,对于A=A+1,表达式A被计算了两次,对于复合运算符A+=1,表达式A仅计算了一次。一般的来说,这种区别对于程序的运行没有多大影响,但是当表达式作为函数的返回值时,函数就被调用了两次(以后再说明),而且如果使用普通的赋值
运算符,也会加大程序的开销,使效率降低。
可杰369
2020-01-26 · TA获得超过3.6万个赞
知道大有可为答主
回答量:1.2万
采纳率:25%
帮助的人:779万
展开全部
七个


*
/
%
++
--
加减乘除不用我说了吧
"%"求余,就是算除法,值是他的余数
"/"这个是除法,但是有一点注意,两边操作数全为整数时,值是取整的。
“++”是自加,比如说i++就是i的值自动加1,规则是i++是鲜赋值再自加,++i是先自加再赋值。举个例子a=i++这个是先把i的值赋给a,然后i再自加。a=++i是i先自加,然后把自加之后的值赋给a。
“--”是自减,和自加的规则相同,只是值是自动减一。
C语言的运算符可分为以下几类:
1.
算术运算符:用于各类数值运算。包括加(+)、减(-)、乘(*)、除(/)、求余(或称模运算,%)、自增(++)、自减(--)共七种。
2.
关系运算符:用于比较运算。包括大于(>)、小于(<)、等于(=
=)、大于等于(>=)、小于等于(<=)和不等于(!=)六种。
3.
逻辑运算符:用于逻辑运算。包括与(&&)、或(||)、非(!)三种。
4.
位操作运算符:参与运算的量,按二进制位进行运算。包括位与(&)、位或(|)、位非(~)、位异或(^)、左移(<<)、右移(>>)六种。
5.
赋值运算符:用于赋值运算,分为简单赋值(=)、复合算术赋值(+=,-=,*=,/=,%=)和复合位运算赋值(&=,|=,^=,>>=,<<=)三类共十一种。
6.
条件运算符:这是一个三目运算符,用于条件求值(?:)。
7.
逗号运算符:用于把若干表达式组合成一个表达式(,)。
8.
指针运算符:用于取内容(*)和取地址(&)二种运算。
9.
求字节数运算符:用于计算数据类型所占的字节数(sizeof)。
10.
特殊运算符:有括号(),下标[],成员(→,.)等几种。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式