C 标记化结构初始化语法 点运算符

已知一个结构体

struct point{

  int posX;

  int posY;

}

 

C99支持结构的指定初始化项目,结构的指定初始化项目使用点运算符和成员名(而不是方括号和索引值)来标识具体的元素。

如:

struct point Position{

  .posX= 100,

  .posY= 200

};

这个声明采用了标记化结构初始化语法。这种写法是值得采用的,因为它使驱动程序在结构的定义发生变化时更具有可移植性,并且使代码更加紧凑且易读。标记化的初始化方法允许对结构成员进行重新排列。在某些场合下,将频繁被访问的成员放在相同的硬件缓存行上,将大大提高性能。 ……ldd3


linux 内核中 这样初始化的结构体随处可见


来自我的baidu博客


你可能感兴趣的:(c,linux,struct)