C语言中+=是什么意思?
2022-09-28 · 百度认证:北京惠企网络技术有限公司官方账号
C语言中+=是复合赋值运算符。复合赋值运算符就是在简单赋值符“=”之前加上其它运算符构成,例如+=、-=、*=、/=、%=。
即:a+=1;等价于a=a+1。+=的意思就是把左边的第一个符号移到右边,其实就是b=b+c的意思。直接把b+=c的b+移到右边,将b的值取出再取出c的值,相加然后赋给b,存储在b开辟的内存空间中,类似的还有,b-=c、b*=c都是这个意思。
这么写可以让执行优化,寻址a的地址一次即可,否则需要两次对a进行寻址。然而cpu的突飞猛进让这个优化在几十年前已经没有实际价值了,保留下来无非是因为语法兼容和程序员习惯。
扩展资料
C语言中运算符号种类
1、算术运算符
用于各类数值运算。包括加(+)、减(-)、乘(*)、除(/)、求余(或称模运算,%)、自增(++)、自减(--)共七种。
2、关系运算符
用于比较运算。包括大于(>)、小于(<)、等于(==)、 大于等于(>=)、小于等于(<=)和不等于(!=)六种。
3、逻辑运算符
用于逻辑运算。包括与(&&)、或(||)、非(!)三种。
4、位操作运算符
参与运算的量,按二进制位进行运算。包括位与(&)、位或(|)、位非(~)、位异或(^)、左移(<<)、右移(>>)六种。
5、赋值运算符
用于赋值运算,分为简单赋值(=)、复合算术赋值(+=,-=,*=,/=,%=)和复合位运算赋值(&=,|=,^=,>>=,<<=)三类共十一种。
6、条件运算符
这是一个三目运算符,用于条件求值(?:)。
7、逗号运算符
用于把若干表达式组合成一个表达式(,)。
8、指针运算符
用于取内容(*)和取地址(&)二种运算。
9、求字节数运算符
用于计算数据类型所占的字节数(sizeof)。
10、特殊运算符
有括号(),下标[],成员(→,.)等几种。
参考资料来源:百度百科-C语言运算符号