打印
[PIC®/AVR®/dsPIC®产品]

在联合体中使用位段表示,节约字节

[复制链接]
1192|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
#include <stdio.h>
union FrequencyData {
    unsigned int rawData; // 原始数据
    struct {
        unsigned int frequency : 15; // 频率值,占用15位
        unsigned int swFlag : 1;     // SW标志位,占用1位
    };
};

typedef union FrequencyData Frequency;
Frequency dd;


int main()
{
        dd.rawData=0xF001;
   /* 我的第一个 C 程序 */
   printf("Hello, World! \n");
   printf("%d \n",dd.swFlag);
   printf("%d \n",dd.frequency);
   
   return 0;
}


使用特权

评论回复
沙发
xuanhuanzi|  楼主 | 2024-5-16 23:04 | 只看该作者

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

172

主题

2181

帖子

3

粉丝