第三课

1,隐式类型转换【占内存较小的类型会向占内存较大的方向转换】

{float->double<-long<-unsigned<-int<-short/char}

2,强制类型转换:形式:(类型名)(表达式)【注意:从小类型转到大类型,,可以确保精度不会丢失】

3,操作数:参与运算的数据

4,运算符:表示数据如何运算

5,表达式:求值规则

6,算术运算符:【注意:1,整数的‘/’会截尾 2,取模运算只用于整数】

7,画图快捷键(1,win+r打开运行 2,输入mspaint)

8,++与 - -(+1与-1的运算):【1,前置时是先运算,后使用 2,后置时是先使用,后运算】

9,逗号表达式:整个表达式的值是最后那个逗号之后的表达式的值;

10,逻辑表达式短路现象:【当计算出一个子表达式的值后便可确定整个逻辑表达式的值后,后面的子表达式就不再计算】

11,运算符图解(注意:所有位运算都是针对二进制)

运算符 解释 结合方式
() [] -> . 括号,数组,两种成员访问方式 从左到右
~ ! ++ - - + - * & sizeof 异或,按位取反,自增,自减,正负号,间接运算符,取地址符,求类型大小 从右到左
* / % 乘,除,取余 从左到右
+ - 加,减 从左到右
<< >> 左移,右移 从左到右
< <= >= > 小于,小于等于,大于等于,大于 从左到右
== != 等于,不等于 从左到右
& 按位与 从左到右
^ 按位异或 从左到右
| 按位或 从左到右
&& 逻辑与 从左到右
|| 逻辑或 从左到右
?: 条件运算符:表达式1 ?:表达式2:表达式3【表达式1为真,则为表达式2,假则为表达式3】 从左到右
= += -= *= /= &= ^= <<= >>= 各种赋值 从右到左
, 逗号 从左到右

12,位运算图解

符号 功能 记忆技巧
& 按位与 有0则1
| 按位或 有1则1
^ 按位异或 相同为0,不同,1
~ 取反 0变1,1变0
<< 左移 移位右边补0
>> 右移 右移左边补0

13,运算符优先级排行榜

第一名 [] () . -> 括号运算符,成员运算符
第二名 ++ - - + - * & 自增,自减,正 ,负,指针运算符,取地址符
第三名 * / % 乘,除,取余
第四名 + - 加,减
第五名 << >> 移位运算符
第六名 < > >= <= 关系运算符
第七名 == != 等于,不等于
第八名 & 位与
第九名 ^ 异或
第十名 | 位或
第十一名 && 逻辑与
第十二名 || 逻辑或
第十三名 ?: 条件运算符
第十四名 = 赋值运算符
第十五名 , 逗号运算符