linux c 赋值表达式及复合赋值表达式

在c语言中,常用的赋值表达式“=”,它可以和算术运算符及位运算符组合成复合运算符。

1 基本赋值运算

基本赋值运算 “=” 是两个表达式之间的计算。
例:
左值表达式=右值表达式
在基本赋值运算中,左值表达式一般为变量名,它的功能是首先计算右边表达式的值,然后将右值表达式赋值给左值表达式,两个表达式的数据类型可以不通,
但是在进行赋值的时候,会自动根据赋值转换规则,将右值表达式的类型转换为左值表达式的类型。

例:
int a,b;
char c,d;
float e,f;
double g;
b=a; //将a的值赋值给b
a=d; //将d转换为ASCII int类型然后赋值给a
g =c*d; //将c d 转换为float 然后计算 最后赋值给g
a= d
2 复合赋值运算

当赋值表达式=前面加一些计算符时,此时便构成了复合赋值表达式,c语言中的复合赋值表达式有:
+=
-=
*=
/=
%=
&=
|=
^=
<<= >>=
例:
左值表达式 += 右值表达式
等价于
左值表达式 = 左值表达式 + 右值表达式