运算符 :告诉编译程序执行特定算术或逻辑操作的符号。 (用来进行运算的符号)
按功能分类
1)算术运算符
2)关系运算符
3)逻辑运算符
4)按位运算符
按操作数划分
1)单目运算符
2)双目运算符
3)三目运算符
运算符的优先级和结合性
1)只有在优先级相同的情况下,才有结合性
算术运算符
1)* / % 第3级 左结合
2)+ - 第4级 左结合
3)m%n 结果的正负性取决于m m和n都不能是小数
类型转换
1)隐式转换
2)强制类型转换 只是临时转换
3)一个大数加上一个小数时,会有精度丢失的可能
表达式:用运算符按一定规则连接起来的,有意义的式子,表达式一定有返回值
赋值运算符
=
自增自减运算符
++a 先加1 后赋值
a++ 先赋值 后加1
sizeof运算符
1)计算常量/变量/数据类型 在内存中所占的字节数
2)sizeof(‘a’) 字符型常量在内存中是以ASCII码值储存的,a的ASCII码值为97,在内存中占4个字节
3)char ch = ‘a’;
sizeof(ch) 字符型变量在内存中占1个字节
4)sizeof 2.3f
5)sizeof 在用于计算数据类型的所占的字节数的时候,不能省略后面的()
逗号表达式 : 用逗号连接的表达式 //在开发中不建议用逗号表达式的嵌套
逗号表达式的求值:先逐个求表达式的值,然后将最后一个表达式的值赋给整个逗号表达式
(表达式1 , 表达式2........);
int a = 10, b = 20;
int c = (a+b , a-b , a++);
逗号表达式可以嵌套使用
并不是所有出现逗号的地方都能组成表达式,例如 定义变量时
关系运算符 左结合
command + shift + k 清空Xcord的缓存
逻辑运算符
1)表达式1 && 表达式2 逻辑与
表示多个条件同时成立,即为真
如果表达式1为假 ,则整个表达式为假, 并且将不会执行表达式2
2)表达式1||表达式2 逻辑或
表示只要有一个条件成立,即为真
如果表达式1为真,则整个表达式为真 ,并且将不会执行表达式2
3) 表达式! 逻辑非
表示取反
三目运算符
表达式1 ? 表达式 2 :表达式3;
表达式1 为真 返回表达式2
表达式1位假 返回表达式3
|
|