C语言运算符
1.自变运算符:
++/-- 让变量的值自动加1或减1
前自变:++/–num 立即有效
后自变:num++/-- 下一行语句才有效
注意:不要在一行代码中多次出现自变运算符
2.算术运算符:
+ - * / %
整数/整数 只保留整数部分
/ % 除数不能为0,否则会在运行时出现浮点数例外(核心已转储)
% 不能对浮点数求余
3.关系运算符:
== != > < >= <=
会得到比较结果是1(成立)或0(不成立),比较的结果还可以继续参与运算
int n = -10;
10 < n < 100; 与数学比较不一样,是永远为真
注意:建议常量放== != 的左边,防止少些一个=
4.逻辑运算符:
&& || !
会先把运算对象转换成逻辑值:非零转为真,0转为假,然后再参与逻辑运算
A && B 一假即假
A || B 一真即真
!A 求反
&& 和 || 的短路特性:
当左边部分的值已经可以确定整个逻辑运算符的结果时,那么右边部分不执行
也可以借助短路特性,实现简单的单分支效果
5.三目运算符:
A ? B : C
判断A的值如果为真(非0)则执行B,否则执行C
6.赋值运算符:
= += -= *= …
a += b; a =a+b;
注意:赋值运算符的运算结果是右边赋的数据
7.位运算符:& | ~ ^ << >>
sizeof 也是一个运算符
注意:运算符是有优先级之分,如果记不住,那么多加小括号