1、可以用枚举成员来对数组进行初始化
enum
{
member_one = 5,
member_two
};
const char *nm[] = {
[member_two] = "Member Two",
[member_one] = "Member One",
};
2、结构体可以对指定成员进行初始化
typedef struct
{
char Name[20];
unsigned int Id;
unsigned int Age;
}Person;
Person person = {
.Id = 10,
.Name = "Lengxuegang",
.Age = 20
};
3、数组变量可以对指定位置进行初始化
typedef struct
{
char Name[20];
unsigned int Id;
unsigned int Age;
}Person;
Person persons[] =
{
[0].Id = 1,
[1].Name = "LengXuegang"
};
4、数组可以从两端进行初始化
#define MAX 100
int a[MAX] =
{
1, 3, 5, 7, [MAX - 5] = 21, 23, 25, 27, 29
};
参考自:C99-ISO
下载地址:http://download.csdn.net/detail/lxgwm2008/4478088