位运算符和赋值运算符
位运算符 位运算只能对整数进行,可以是整数型变量也可以是被识别为整数类型的字面量。位运算是对该整数实际存储的二进制串的二进制位进行操作,可以进行6种位运算: 运算符 作用 & 按位与 | 按位或 ^ 按位异或 ~ 按位取反 << 左移 >> 右移 位运算都不改变操作数本身的值,而是位运算表达式本身的值为进行位运算之后的值,例如: char a = 0 B00101101 ; char b = 0 B10100110 ; char c = a & b ; // c == 0B00100100 char d = a | b ; // d == 0B10101111 char e = a ^ b ; // e == 0B00100100 char f = ~ a ; // f == 0B11010010 char g = a << 2 ; // g == 0B10110100,低位补0 char h = a >> 2 ; // h == 0B00001011,高位补0 char gg = b << 2 ; // gg == 0B10011000,低位补0 char hh = b >> 2 ; // hh == 0B11101001,高位补1 左移运算,低位一定补0。右移运算,如果是signed类型则补符号位,unsigned类型则补0,例如: unsigned char b = 0