C语言中结构体的初始化

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C语言中结构体的初始化相关的知识,希望对你有一定的参考价值。

直接上例子:

struct point

{   

  int x;   

  int y;   

  int z;

}

//常规写法

struct point pt1 = {100, 300, 200};

//初始化个数少于实际个数时,只初始化前面的成员

struct point pt2 = {400};

struct point pt3 = (struct point){100, 200, 300};

 

//网上说这叫乱序初始化,C99加的。

struct point pt4 = {

  .y = 100,

  .x = 400,

  .z = 0

};

//因为是初始化,如果向下面这样赋值就错了:

//struct point pt4;

//pt4 = {100,200,300};

//pt4 = {.z = 100};

 

以上是关于C语言中结构体的初始化的主要内容,如果未能解决你的问题,请参考以下文章

C语言中结构体在内存中的存储方式?

浅谈C语言中结构体的初始化

c语言结构体的问题

c语言如何实现结构体的深度复制

C语言一维数组二维数组结构体的初始化

关于C语言结构体构造函数初始化的问题?