结构体定义使用小总结

结构体定义的时候可以对位进行第一,每几位表示什么意思,初始化时并且可以单独的对某些位进行赋值具体方法如下

//.h文件
typedef struct tagMMBOXPKT {
    unsigned char  RemoteWorkState:3;       //遥控模式
    unsigned char  JumpGear:2;              //跳档
    unsigned char  SelectGear:3;            //选定档位


    unsigned char  ManualAutoMaticSW:2;     //手动自动切换
    unsigned char  BrakeLightCtrl:2;        //制动灯控制
    unsigned char  LeftLightCtrl:2;         //左转向灯
    unsigned char  RightLightCtrl:2;        //右转向灯


    unsigned char  CBU_control:2;           //整车功能控制时置1,如空调、灯光时
    unsigned char  __bytepadding1:6;        //留空 


    unsigned char  rev[3];                  //填充0xff
    unsigned char  WirelessSintensity;      //wifi信号强度
    unsigned char  RemoteAccelerator;       //油门
}MMboxPkt, *MMboxPtr;
MMboxPkt       gCanMMboxPtk;
#define  MBOX_MMBOX_DEFAULT()                    \
    do {                                         \
        memset(&gCanMMboxPtk, 0, 8);    \
        memset(gCanMMboxPtk.rev, 0xFF, 3);       \
        gCanMMboxPtk.SelectGear  = 1;            \
        gCanMMboxPtk.WirelessSintensity  = 0xFF; \
    }while(0)

// .c文件
main()
{
MBOX_MMBOX_DEFAULT();
}




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值