linux中数组的编码风格

#include <stdio.h>

struct st_test
{
        int a;
        int b;
};

enum
{
        one,
        two,
};

struct st_test tt[2]=
{
        [two] =
        {
                .b=1,
                .a=0,
        },
        [one] = {2,3,},
};

int main()
{

        printf("%d\n",tt[two].b);
        return 0;
}

如上图红色部分所示,可以对数组对应标号的元素进行赋值,标号也可用枚举变量定义为有意义的形式。

另外对结构体中成员的赋值可以以点号加成员变量的格式进行赋值。

这样可以对数组和结构体成员不按顺序进行赋值。

posted @ 2012-08-01 19:22  sky-zhang  阅读(216)  评论(0编辑  收藏  举报