C语言位运算总结

C语言的位运算在检测与控制领域很常用,位运算包括

&     按位于   主要用于清零、取一个数中的某些指定位、保留某些位

|      按位或   

^     异或     主要用于使特定位翻转、与0相与保留原值、交换两个值不用临时变量

交换变量:

a = a ^ b;
b = b ^ a;
a = a ^ b;

 

~     取反     

<<   左移    

>>   右移

另外还有

位段:C语言允许在一个结构体中以位为单位指定其成员所占内存长度

1 struct packed_data {
2 unsigned a:2;
3 unsigned a:2;
4 unsigned a:2;
5 unsigned a:2;
6 int i;
7 }data;

posted on 2012-03-18 11:54  vincent Van Gogh  阅读(348)  评论(0编辑  收藏  举报

导航