数组直接赋值给结构体

您所在的位置:网站首页 结构体里面的数组如何赋值 数组直接赋值给结构体

数组直接赋值给结构体

2024-06-12 22:11| 来源: 网络整理| 查看: 265

    经过几天的努力 ,终于把数组 赋值给结构体,

 

#pragma pack(push)  //保存原对齐并设置新的字节对齐

 #pragma pack(1) typedef struct __TNetTopologyRecord {      BYTE TotalPackNum;     //总包数      BYTE CurrentPackNum;   //当前包号      BYTE ExtID;   //预留字节,暂时为零[LongID->5]     WORD MarkID;  //标识ID,固定为0xbebe[LongID->7-6] }NetTopologyRecord,*PNetTopologyRecord; #pragma pack(pop)  //恢复原字节对齐方式

 

 BYTE byll[8] = {65,66,67,68,69,70,71,72}; PNetTopologyRecord pNet; pNet = (PNetTopologyRecord)(byll+2);

 

这样就避免了不同字节间赋值,关健是 #pragma pack(1)和pragma pack(pop)  这两句,把内存字节对齐,这样不会因为结构体中有BYTE和WORD字节,没法直接赋值了



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3