【发布时间】:2015-12-16 16:21:20
【问题描述】:
如何在 C 中获取联合中结构的大小?
给定以下定义:
typedef union
{
struct req_
{
uint8_t cmd1;
uint8_t cmd2;
} req;
struct rsp_
{
uint8_t cmd_result;
uint8_t status_1;
uint8_t status_2;
uint8_t status_3;
uint8_t status_4;
} rsp;
} msg_t;
sizeof(msg_t) 将提供联合的最大大小,在这种情况下,它将是 5,因为 rsp_ 大于 req_。
你如何获得sizeof(req_)?
【问题讨论】:
标签: c data-structures struct sizeof unions