1.算术运算符
一元运算符︰++、–
二元运算符:+、-、*、1、%
2.表达式
符号与操作数的集合。
3.自增、自减运算符
后置++:先运算再++;
前置++:先++再运算。
eg:
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int num1,num2=2;
num1=0;
cout<<"前置++\n";
cout<<num1++<<endl;
cout<<num1<<endl;
num1=0;
cout<<"后置++\n";
cout<<++num1<<endl;
cout<<num1<<endl;
return 0;
}
输出:
前置++
0
1
后置++
1
1
eg2:
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int num1,num2=2;
num1= num2++ - --num2;
cout << num1 <<"\t" << num2 <<endl;
return 0;
}
输出:
0 2
num2先–再++,所以输出值是2;
num1=0:因为表达式先计算前置一元运算符,在计算二元运算符,最后计算后置一元运算符。
即:先计算–num2,num2就为1,在计算 num2 - num2=0,即num1就是0,最后在计算num2++,num2就是2。
4.类型转换
(1)自动类型转换
原则︰把表示范围小的类型的值转换到表示范围大的类型的值short -> int -> long -> float -> double
#include <iostream>
using namespace std;
int main()
{
int num1=5,num2=2;
double num3=num1/num2;
cout << num3 <<endl;
return 0;
}
输出
2
此时num3是double类型的
(2)强制类型转换
可以小转大,也可以大转小
语法∶(类型名)变量或数值
小转大:
#include <iostream>
using namespace std;
int main()
{
int num1=5,num2=2;
double num3=(double)num1/num2;
cout << num3 <<endl;
return 0;
}
输出:
2.5