首页 > 解决方案 > 迭代结构成员,这些成员是 C 中的数组

问题描述

我有一个结构,其成员是多种大小的 char 数组:

typedef struct data_hex_t
{
    char bat[12];
    char cell_1[5];
    char cell_2[4];
    char cell_3[4];
    char cell_4[4];
} data_hex_t;

我想遍历它们以使用 sizeof (或类似的东西)找到​​它的大小,如下所示:

data_hex_t data_hex;

size_t last_member_size = 0;
for(size_t i = 0; i < sizeof(data_hex); i += last_member_size)
{
    member_size = sizeof(ITERATOR_OF_ARRAY_WITHIN_STRUCT + i);
    last_member_size = member_size;
}

这甚至可以在C中做到吗?

标签: c

解决方案


推荐阅读