c++学习(2)常见的运算符

表达式

表达式是由常量,变量,运算符组成的式子

运算符

运算符有自己的运算法则,优先级别,结合性

位运算

位运算:2进制补码形式参与运算
原码;最高位表示符号位,其他位表示大小
反码:正数反码与原码相同,负数反码:符号位不变,其他位取反
补码:正数补码与原码相同,负数补码:反码加1
补码的补码就是原码

下面来介绍常用的运算符

算数运算符

都是一些老朋友了
乘法运算符【*】
除法运算符【/】
取余运算符【%】
加法运算符【+】
减法运算符【-】
他们的结合性都是左到右,都属于双目运算符(后面会做说明)

取余运算符的注意事项

1.%的两个操作数必须为整形
%的两个操作数必须为整形
2.带负号的模运算
带负号的模运算
我们可以看出只和被除数的符号有关

取余运算符可以做什么

看到这里大家或许没看出取余运算符可以做什么事情
1.可以取出每一位的数字
在这里插入图片描述
然后我们就可以逆序输出5432了

2.计算范围距离
比如我们英雄的伤害是在10到20之间
[10,20]
int Hurt = rand()%(20-10+1)+10;
cout<<“Hurt”<<Hurt<<endl;
rand作用是随机产生一个数字

是怎么来的
首先%一个数会得到从0到这个数字-1
比如
任意一个正数%5
结果只可能是0,1,2,3,4
用上面的例子
[10,20]
1我们至少有10点伤害
2.在10的基础上加上从0到20(max) - 10(min)
也就是
rand()%(20-10+1)+10;
我们可以推出范围距离
rand()%(max - min + 1) + min

自增自减

++,–自己(必须是变量)本身+1或者-1
a++(–)后置;先运算,再自加(减)
++(–)a前置:先自加(减) ,再运算

前置和后置的区别
1.运算法则不一样
2.优先级:后置大于前置
3.效率:前置>后置 (后置会调用2次拷贝构造函数)

	int a = 1,b;
	b = a++;//后置,先计算b=a,再计算
	cout << "a=" << a << ",b=" << b << endl;//2,1
	b = ++a;//前置,先自加a=a+1;再计算b=a
	cout << "a=" << a << ",b=" << b << endl;//3,3
	//运算前, 数前置; 运算后, 数后置(保证它参与运算)
	b = a++ + a;//后置>前置
	cout << "a=" << a << ",b=" << b << endl;//4,6
	b = a++ + (++a) + a++;
	cout <<
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值