[摘要]=1; printf("%d,%d,%d ",pbit-〉a,pbit-〉b,pbit-〉c); 上例程序中定义了位域结构bs,三个位域为a,b,c。说明了bs类型的变量bi...
=1;
printf("%d,%d,%d ",pbit-〉a,pbit-〉b,pbit-〉c);
}
上例程序中定义了位域结构bs,三个位域为a,b,c。说明了bs类型的变量bit和指向bs类型的指针变量pbit。这表示位域也是可以使用指针的。
程序的9、10、11三行分别给三个位域赋值。( 应注意赋值不能超过该位域的允许范围)程序第12行以整型量格式输出三个域的内容。第13行把位域变量bit的地址送给指针变量pbit。第14行用指针方式给位域a重新赋值,赋为0。第15行使用了复合的位运算符"&=", 该行相当于: pbit-〉b=pbit-〉b&3位域b中原有值为7,与3作按位与运算的结果为3(111&011=011,十进制值为3)。同样,程序第16行中使用了复合位运算"
关键词:C语言之枚举与位运算