运算符部分:
1)每个运算符所需要的参与运算的操作个数
2)结合性
3)优先级
4)运算符的特殊用法
取余 % 两边的操作数必须是整数 5 % 2 = 1 (√) 5.0 % 2 (×)
逻辑与运算符的短路特性 :
int a = 1 , b = 2 , c = 3 , d = 4 ;
int m = 1, n = 1 ;
(m = a > b ) && (n = c > d )
printf("m = %d \n n = %d \n");
结果输出:
m = 0
n = 1
短路特性:因为逻辑与左边的表达式为假,所以右边的表达式就不会去判断。左边为假则 m=0 ,右边的 n 值也为假,但因为短 路特性,因为左边已经为假,则不去判断右边的值,则 n 仍为 1
5)位运算符的重要意义
将操作数中第n位 置 1 ,其他位不变:num = num | 1 << n ;
将操作数中第n位 置 0 ,其他位不变 :num = num & ~(1 << n) ;
测试第 n 位 :if( num & 1 << n) ;
从一个指定宽度的数中取出其中某几位: