c语言位运算符包括 位逻辑运算符 和 移位运算符。位逻辑运算符:&按位与,|按位或,^按位异或,~取反移位运算符:<<左移,>>右移-----------------------------------------------------------------------&按位与运算符:二进制中运算,0&0=0,0&1=0,1&0=0,1&1=1,相当于布尔型的与运算|按位或运算符:二进制中运算,0|0=0,0|1=1,1|0=1,1|1=1,相当于布尔型的或棚掘运算^按位异或运算符:二进制中运算,0^0=0,0^1=1,1^0=1,1^1=0,0与0位异或等于0,1与1位异或等于0,1和0异或等于1~取反运算符,二进制中运算:~1=0,~0=1,非1等于0(非真得假)非0等于1(非假得真)。<<左移运算符:运灶和漏算规则:把"<<"左边的运算数的各二进制位隐烂全部左移若干位,移动的位数由"<<"右边的数指定,高位丢弃,地位补0。可以实现乘法运算,二进制0000011<<2得二进制00001100.>>右移运算符:运算规则:把">>"左边的运算数的各二进制位全部右移若干位,移动的位数由">>"右边的数指定。有符号的数右移时符号也随着右移;是正数的话在最高位补0,是负数的话,符号位为1,最高位补0还是补1决取于计算机系统的规定。移入0的称为"逻辑右移",移入1的称为“算术左移”。很多系统规定为补1,即“算术右移”。右移运算可以实现除法的功能,右移1位相当于该数除以2,右移n位相当于该数除以2的n次方。-------------------------------------------------------------------------运算符 优先级 运算符类型& 8 双目| 10 双目^ 9 双目~ 2 单目<< 5 双目>> 5 双目---------------------------------------------------------------------------