在内核文件里经常看到结构体里成员名以点开头,其实是C99提供的结构体初始化的方法之一。
下面看一下C语言结构体初始化的3种方法:
typedef struct {
int a;
char b;
float c;
} Stu;
- C89标准的初始化方法
Stu stu1 = {1, 'a', 1.5};
```
2. C99标准初始化方法
```C
Stu stu2 = {
.a = 1,
.b = 'a',
.c = 1.5,
};
```
3. GUN C 初始化方法 (非标准,不推荐)
```C
Stu stu3 = {
a: 1,
b: 'a',
c: 1.5,
}
```