【发布时间】:2011-07-15 15:00:31
【问题描述】:
struct
{
int a[5], b;
} game[] =
{
[0].a = { 1 },
[1].a[0] = 2
};
理想情况下,我会找到一些方法来执行以下操作:
struct
{
int a, b;
} foo =
{
.a = 4,
.b = 5
};
我想要对结构进行按名称初始化的原因是我自己的结构有很多成员,所以我想要更好的清晰度。我不应该只在单独的语句中初始化它们,因为这是一个对性能敏感的嵌入式应用程序,其中成员实际上是位域,因此单个 struct init 生成的指令比多个成员初始化少。
哪个 C 标准允许这样的按名称成员初始化?
【问题讨论】:
标签: c data-structures struct initialization