运算符
1.算数运算符
自增运算符:i++自增后参与运算,++i参与运算后在自增
2.关系运算符
3.逻辑运算符
4.赋值运算符
5.位运算
![](/qrcode.jpg)
- 位逻辑与优先级最高,位逻辑或次之,位逻辑异或最低。
6.移位运算符
- 左移:二进制操作数按指定的移动位数向左移,左边溢出位被丢弃,右边空位0补充,相当于乘以2的幂
- 右移:相当于除以2的幂
7.sizeof运算符:返回指定的数据类型或表达式值得数据类型在内存中占用的字节数
sizeof(类型说明符)
sizeof(表达式)
8.条件运算符:三目运算符
<表达式1>?<表达式2>:<表达式3>
- 表达式1 是一个逻辑值,当为真时,运算结果是表达式2,为假时,运算结果是表达式3,相当于if语句
9.逗号运算符:优先级最低,自左向右,多目运算符
结合性和优先级
表达式
- 表达式中的类型转换:
1.隐式转换:不同数据的量混合运算时,编译器自动完成
2.强制类型转换:把表达式的运算结果强制转换成类型说明符所表示的类型。
类型说明符 (表达式)或 (类型说明符) 表达式
语句
1.表达式语句
2.空语句
3.复合语句
4.函数调用语句
条件判断语句
1.if语句:
```
if(表达式)
语句
```
表达式为真则执行语句,为假则跳过,执行下一条语句。
2.使用else语句:
```
if(表达式)
语句1;
else
语句2;
```
表达式为真则执行语句1,为假则执行语句2
3.多次判断语句
```
if(表达式1)
语句1;
else if(表达式2)
语句2;
...
else if(表达式n)
语句n;
else
语句m;
```
表达式为真则执行语句,为假则跳过继续判断下一个表达式,全部为假则执行else语句
条件运算符
```
<表达式1>?<表达式2>:<表达式3>
```
- 改成if语句:
```
if (表达式1)
表达式2
else
表达式3
```
switch语句
```
switch (表达式)
{
case 常量表达式1:
语句1;
break;
case 常量表达式2:
语句2;
break;
...
case 常量表达式n:
语句n;
break;
default :
语句n+1
}
```
表达式是一个算数表达式,需要计算出表达式的值,该值是一个整型值或字符,浮点数则产生错误。
将该值与case语句中的值进行比对,匹配成功则执行语句并break,跳出switch语句,没有执行default语句。