目录
算术运算符:
+
-
*
/:不能除0
%:不能对浮点数操作
++:自增与运算符 i++:先用再加 ++i:先加再用
--:自减运算符
常量,表达式不可以++,--,变量可以
赋值运算符
三目运算符
逗号表达式
sizeof运算符
运算优先级
算术运算符:
+
-
*
/:不能除0
%:不能对浮点数操作
++:自增与运算符 i++:先用再加 ++i:先加再用
--:自减运算符
常量,表达式不可以++,--,变量可以
赋值运算符
=
左值:允许放在赋值运算符左边的值,只有变量可以作为左值
右值:允许放在赋值运算符右边的值,常量,变量,常量变量组成的表达式都可以是右值
左值为浮点数类型,右值为整型,会扩展精度。
左值为整数类型,右值为浮点数类型,会舍弃精度
左右两边均为整型,会将右值直接拷贝到左值空间中去。(注意有无符号转换,符号位注意)
小数据放入大数据:数据扩展,有无符号数高位都补符号位,无符号数都补0
大数据放入小空间:直接截取数据地位放入小空间
a +=3; a= a+3
a *= 2+3; a= a*(2+3) 先算右边加号,再算乘等于,乘等于优先级低。
三目运算符
表达式?表达式1:表达式2; 如果第一个表达式为真就执行表达式1,否则就执行表达式2
eg int a= 1;
int b = 3;
int max =0;
max = a>b ? a : b;
上式就会比较a,b的大小从而作为右值的最终值,再进行赋值给max
逗号表达式
从左到右依次执行表达式,并将最后一个逗号表达式的结果作为整体逗号表达式的结果
sizeof运算符
sizeof(数据类型/变量名):获得数据类型,或者是变量在内存中所占的字节