c++赋值运算符

操作符:-=

功能:减法赋值
用法:a-=b;
例:

#include <iostream> 
using namespace std;
int main()
{
	int a = 10, b = 3;
	printf("a-=b %d\n", a -= b);
	a = 10, b = 3;
	a = a - b;
	printf("a=a-b %d\n", a);
	return 0;
}

运行结果:

a-=b 7 
a=a-b 7

所以a-=b等价于a=a-b

操作符:*=

功能:乘法赋值
用法:a*=b;
例:

#include <iostream> 
using namespace std;
int main()
{
	int a = 4, b = 3;
	printf("a*=b %d\n", a *= b);
	a = 4, b = 3;
	a = a * b;
	printf("a=a*b %d\n", a);
	return 0;
}

运行结果:

a*=b 12 
a=a*b 12

所以a=b等价于a=ab

操作符:/=

功能:除法赋值
用法:a/=b;
例:

#include <iostream> 
using namespace std;
int main()
{
	int a = 12, b = 3;
	printf("a/=b %d\n", a /= b);
	a = 12, b = 3;
	a = a / b;
	printf("a=a/b %d\n", a);
	return 0;
}


运行结果:

a/=b 4 
a=a/b 4


所以a/=b等价于a=a/b

操作符:%=

功能:取模赋值
用法:a%=b;
例:

#include <iostream> 
using namespace std;
int main()
{
	int a = 10, b = 3;
	printf("a%=b %d\n", a %= b);
	a = 10, b = 3;
	a = a % b;
	printf("a=a%b %d\n", a);
	return 0;
}

运行结果:

a%=b 1 
a=a%b 1

所以a%=b等价于a=a%b

操作符:<<=

功能:左移赋值
用法:a<<=b;
例:

#include <iostream> 
using namespace std;
int main()
{
	int a = 1, b = 2;
	printf("a<<=b %d\n", a <<= b);
	a = 1, b = 2;
	a = a << b;
	printf("a=a<<b %d\n", a);
	return 0;
}

运行结果:

a<<=b 4 
a=a<<b 4

所以a<<=b等价于a=a<<b

操作符:>>=

功能:右移赋值
用法:a>>=b;
例:

#include <iostream> 
using namespace std;
int main()
{
	int a = 8, b = 2;
	printf("a>>=b %d\n", a >>= b);
	a = 8, b = 2;
	a = a >> b;
	printf("a=a>>b %d\n", a);
	return 0;
}

运行结果:

a>>=b 2 
a=a>>b 2

所以a>>=b等价于a=a>>b

操作符:&=

功能:按位与赋值
用法:a&=b;
例:

#include <iostream> 
using namespace std;
int main()
{
	int a = 6, b = 3;
	printf("a&=b %d\n", a &= b);
	a = 6, b = 3;
	a = a & b;
	printf("a=a&b %d\n", a);
	return 0;
}

运行结果:

a&=b 2 
a=a&b 2

所以a&=b等价于a=a&b

操作符:|=

功能:按位或赋值
用法:a|=b;
例:

#include <iostream> 
using namespace std;
int main()
{
	int a = 6, b = 3;
	printf("a|=b %d\n", a |= b);
	a = 6, b = 3;
	a = a | b;
	printf("a=a|b %d\n", a);
	return 0;
}

运行结果:

a|=b 7
a=a|=b 7

所以a|=b等价于a=a|b

操作符:^=

功能:按位异或赋值
用法:a^=b;
例:

#include <iostream> 
using namespace std;
int main()
{
	int a = 6, b = 3;
	printf("a^=b %d\n", a ^= b);
	a = 6, b = 3;
	a = a ^ b;
	printf("a=a^b %d\n", a);
	return 0;
}

运行结果:

a^=b 5 
a=a^b 5

所以a^=b 等价于a=a^b

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值