在C语言中,赋值运算符很常用,常见的运算符有:=、+=、-=、*=、/=。赋值运算符能简化代码,我们要算一个数加二,完整的代码可以写成 a = a + 2;如果用上了赋值运算符,则可写成 a += 2。下面将会详细介绍C语言支持所有的赋值运算符。
C语言支持的所有赋值运算符,如下表所示:
运算符 | 解释 | 例子 |
---|---|---|
= | 简单的赋值运算符 | A=1相当于将1赋值给A |
+= | 加且赋值运算符 | A+=1相当于A=A+1 |
-= | 减且赋值运算符 | A-=1相当于A=A-1 |
*= | 乘且赋值运算符 | A*=1相当A=A*1 |
/= | 除且赋值运算符 | A/=1相当A=A/1 |
%= | 去余且赋值运算符 | A%=2相当A=A%2 |
<<= | 左移且赋值运算符 | A<<=2等价于A=A<<2 |
>>= | 右移且赋值运算符 | A>>=2等价于A=A>>2 |
&= | 按位与且赋值运算符 | A&=2等价于A=A&2 |
^= | 按位异或赋值运算符 | A^=2等价于A=A^2 |
|= | 按位或且赋值运算符 | A|=2等价于A=A|2 |
举个栗子,展示一下C语言支持的所有赋值运算符号,源代码如下:
#include <stdio.h>
int main()
{
int a = 10;
int c;
c = a;
printf("c 的值 = %d\n", c );
c += a;
printf("c 的值 = %d\n", c );
c -= a;
printf("c 的值 = %d\n", c );
c *= a;
printf("c 的值 = %d\n", c );
c /= a;
printf("c 的值 = %d\n", c );
c = 200;
c %= a;
printf("c 的值 = %d\n", c );
c <<= 2;
printf("c 的值 = %d\n", c );
c >>= 2;
printf("c 的值 = %d\n", c );
c &= 2;
printf("c 的值 = %d\n", c );
c ^= 2;
printf("c 的值 = %d\n", c );
c |= 2;
printf("c 的值 = %d\n", c );
return 0;
}
运行编译上面的代码,将会输出以下结果:
c 的值 = 10
c 的值 = 20
c 的值 = 10
c 的值 = 100
c 的值 = 10
c 的值 = 0
c 的值 = 0
c 的值 = 0
c 的值 = 0
c 的值 = 2
c 的值 = 2