// Borland C++ - (C) Copyright 1991, 1992 by Borland International
/* HELLO.C -- Hello, world */
#include <stdio.h>
typedef struct Sbit // 定义结构类型
{
unsigned int bit0:1;
unsigned int bit1:1;
unsigned int bit2:1;
unsigned int bit3:1;
unsigned int bit4:1;
unsigned int bit5:1;
unsigned int bit6:1;
unsigned int bit7:1;
unsigned int bit8:8;
};
typedef union uu // 定义联合类型
{
unsigned int all;
Sbit bit;
};
uu1 aa[3]; // 定义联合数据类型的数组
#define u0 (*(uu *)(aa)) // 将数组中的每个元素再定义为特定的名字
#define u1 (*(uu *)(aa+1)) // 接下来的元素
#define u2 (*(uu *)(aa+2))
#define u3 (*(uu *)(aa+3))
int main()
{
aa[0].all = 0x0F;
u0.bit.bit1 = 0;
/* u0 = 0x0F;
u1.all = 1;
u2.all = 2;
u3.all = 3; */
printf("Hello, world/n");
return 0;
}
1、将数组中的元素再定义为特殊的名字方便程序中使用
最新推荐文章于 2023-08-23 10:09:13 发布
本文介绍了一个使用C语言实现的位操作示例,通过定义结构体和联合体来操作位,并展示了如何初始化这些位以及如何修改特定位的值。此外,还提供了一个简单的“Hello, world」程序。
1038

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



