算术运算符
处理四则运算,加减乘除等
| 运算符 | 术语 | 示例 | 结果 |
|---|---|---|---|
| + | 正号 | +3 | 3 |
| - | 负号 | -3 | -3 |
| + | 加 | 10+5 | 15 |
| - | 减 | 10-5 | 5 |
| * | 乘 | 10*5 | 50 |
| / | 除 | 10/5 | 2 |
| % | 取模(取余) | 10%3 | 1 |
| ++ | 前置递增 | a=2;b=++a; | a=3;b=3; |
| ++ | 后置递增 | a=2;b=a++; | a=3;b=2; |
| -- | 前置递减 | a=2;b=--a; | a=1;b=1; |
| -- | 后置递减 | a=2;b=a--; | a=1;b=2; |
- 两个+和-其实是一样的只是+既可以代表两个数相加,也可以表示一个数是正数,-同理.
- 两个数相除,除数不能为0
- 取模两个操作数必须都为整数,本质是做除法求余数,所以像
10%0也是不允许的. - 两个整数相除仍然是小数
10/3=3 - 两个小数也可以相除
#include<iostream>
using namespace std;
int main() {
int a = 2, b = ++a;
cout << "a =" << a << ", b = " << b << endl;
a = 2; b = a++;
cout << "a =" << a << ", b = " << b << endl;
a = 2; b = --a;
cout << "a =" << a << ", b = " << b << endl;
a = 2; b = a--;
cout << "a =" << a << ", b = " << b << endl;
return 0;
}打印结果为:a =3, b = 3a =3, b = 2a =1, b = 1a =1, b = 2
前置递增和后置递增都是让这个变量进行+1的操作,二者的区别是前置递增是这个数先自己加一,然后再参与表达式的计算,后置递增是这个数先参与表达式的计算,再让自己加一,前置递减和后置递减同理.
赋值运算符
用于将表达式的值赋给变量
| 运算符 | 术语 | 示例 |
|---|---|---|
| = | 赋值 | a=2;b=3; |
| += | 加等于 | a=0;a+=2; |
| -= | 减等于 | a=5;a-=3; |
| *= | 乘等于 | a=2;a*=2; |
| /= | 除等于 | a=4;a/=2; |
| %= | 模等于 | a=3;a%=2; |
#include<iostream>
using namespace std;
int main() {
int a = 10,b=5;
cout << (a += 20) << endl;
cout << (b *= 3) << endl;
return 0;
}打印结果:3015a+=20等价于a=a+20,b*=3等价于b=b*3,其他也同理.
比较运算符
用于表达式的比较,并返回一个真值或假值
| 运算符 | 术语 | 示例 |
|---|---|---|
| == | 相等于 | 4==3 |
| != | 不等于 | 4!=3 |
| < | 小于 | 4<3 |
| > | 大于 | 4>3 |
| <= | 小于等于 | 4<=3 |
| >= | 大于等于 | 4>=1 |
=用于赋值,所以当我们判断是否相等时要用==,两个等于号.
#include<iostream>
using namespace std;
int main() {
cout << (4>3) << endl;
cout << (2==1) << endl;
return 0;
}打印结果10
逻辑运算符
根据表达式的值返回真值或假值
| 运算符 | 术语 | 示例 | 结果 |
|---|---|---|---|
| ! | 非 | !a | 如果a为假,则!a为真,如果a为真,则!a为假 |
| && | 与 | a&&b | 如果a和b都为真,则结果为真,否则为假 |
| || | 或 | a||b | 如果a和b有一个为真,则结果为真,二者都为假时,结果为假 |