#include <stdio.h>
struct test{
int a:4;
//位域的赋值不能超过该域所能表示的最大值。
//如a有4位,第1位为符号位,即只有3位为有效数值,能表示的最大数为7,若赋为8,就会越界
//int越界时补1或0(signed与该位域最高位相同 ,unsigned补0)
};
int main(int argc, char* argv[])
{
test t;
for (int i = 1;i!=10; i++)
{
t.a = i;
printf("%d\n", t.a);
}
return 0;
}
本文深入探讨了C语言中位域的定义、赋值规则及其在实际编程中的应用,通过实例展示了如何利用位域进行高效的数据处理。
251

被折叠的 条评论
为什么被折叠?



