指定初始化

c99增加了一个新特性:指定初始化器(designated initializer)

数组

可以在初始化列表中使用带方括号的下标指明待初始化的元素
int days[12] = { 31, 28, [4] = 31, 30, 31, [1] = 29 };

结构体

使用点运算符和成员名 标识特定的元素,就不需要再按照元素声明的顺序依次初始化了

struct book {
	char title[128];
	char author[64];
	float value;
};
struct book gift = { 
	.value = 25.99,
	.author = "James Broadfool",
	.title = "Rue for the Toad"
};

不过注意,对特定成员的最后一次赋值才是它实际获得的值

posted @ 2024-01-31 17:48  LdreamerD  阅读(6)  评论(0)    收藏  举报