本文主要是介绍C语言中结构体(struct)乱序初始化,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
摘要:简单介绍一下C语言中结构体的乱序初始化方法,在linux内核中比较常见。
关键词:C语言 结构体 struct 初始化
正如下面代码所示:
1: struct __st_t
2: {
3: int a;
4: int b;
5: };
6:
7: int main(void)
8: {
9: // 方式一
10: struct __st_t var1 = {
11: .a = 1,
12: .b = 2
13: };
14:
15: // 方式二
16: struct __st_t var2 = {
17: a:1,
18: b:2
19: };
20:
21: return 0;
22: }
对于结构体__st_t定义的变量,使用了两种方式进行变量初始化。
方式一是C99新增的方式,可以指定初始化项目,在linux 2.6版内核主要使用这种方式给结构体初始化。
方式二是GCC的的扩展,在linux 2.4版内核主要使用这种方式。
建议使用方式一,理由是显而易见的。
(58条消息) C语言中结构体(struct)乱序初始化_寂竹-CSDN博客
这篇关于C语言中结构体(struct)乱序初始化的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!