问答

汇集网友智慧,解决技术难题

21ic问答首页 - TAG - structs
  • 结构体按位对齐后的赋值

    [i=s] 本帖最后由 slf123123 于 2021-4-19 09:13 编辑 [/i] [p=24, null, left][color=rgb(34, 34, 38)][backcolor=rgb(255, 255, 255)][font="]typedef unsigned long DWORD;[/font][/backcolor][/color][/p][p=24, null, left][color=rgb(34, 34, 38)][backcolor=rgb(255, 255, 255)][font="]#pragma pack(push) #pragma pack(1) typedef struct si { DWORD a:4; DWORD b:7; DWORD c:3; DWORD d:1; [/font][/backcolor][/color][/p][p=24, null, left][color=rgb(34, 34, 38)][backcolor=rgb(255, 255, 255)][font="] DWORD e:3; DWORD f:14; }si; #pragma pack(pop) [/font][/backcolor][/color][/p] [p=24, null, left][color=rgb(34, 34, 38)][backcolor=rgb(255, 255, 255)][font="] 如上所示这个结构体对齐后是四个字节[/font][/backcolor][/color][/p][p=24, null, left][color=rgb(34, 34, 38)][backcolor=rgb(255, 255, 255)][font="]然后[/font][/backcolor][/color][/p][p=24, null, left][color=rgb(34, 34, 38)][backcolor=rgb(255, 255, 255)][font="]uint8 buff[4];[/font][/backcolor][/color][/p][p=24, null, left][color=rgb(34, 34, 38)][backcolor=rgb(255, 255, 255)][font="]怎么将buff赋值给整个结构体[/font][/backcolor][/color][/p][p=24, null, left][color=rgb(34, 34, 38)][backcolor=rgb(255, 255, 255)][font="]struct si su={buff[0],buff[1],buff[2],buff[3]};[/font][/backcolor][/color][/p][p=24, null, left][color=rgb(34, 34, 38)][backcolor=rgb(255, 255, 255)][font="]这样赋值不行吗[/font][/backcolor][/color][/p]

    ig struct AC ck typedef structs

    3228浏览量 14回复量 关注量