C语言位运算符是对二进制数据进行位运算的操作符,可以实现对数据的位操作和翻转。
以下是C语言中常用的位运算符:
· "&" 按位与:两个相应的二进制位都为1,则该位的结果为1,否则为0。
· "|" 按位或:两个相应的二进制位中只要有一个为1,则该位的结果为1,否则为0。
· "^" 按位异或:两个相应的二进制位中若不同,则该位的结果为1,否则为0。
· "~" 按位取反:二进制数全部取反,即全部变成其相反数。
· "<<" 左移运算符:将操作数的所有位全部左移n位。
· ">>" 右移运算符:将操作数的所有位全部右移n位。
下面以两个示例说明:
示例1:利用左移运算符将一个数乘以2的n次幂
#include <stdio.h>
int main(void) {
int a = 2;
int n = 3;
int b = a << n; //左移运算,相当于a*(2^n)
printf("a=%d, b=%d\n", a, b);
return 0;
}
输出结果为:
a=2, b=16
示例2:利用右移运算符判断一个数的奇偶性
#include <stdio.h>
int main(void) {
int a = 5;
int b;
b = a & 1; //按位与运算,相当于a%2
if (b == 1) {
printf("%d是奇数\n", a);
} else {
printf("%d是偶数\n", a);
}
return 0;
}
输出结果为:
5是奇数
以上就是C语言位运算符的具体使用攻略,希望对于大家有所帮助。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C语言位运算符的具体使用 - Python技术站