结构体初始化方式有3种
结构体定义如下
1 struct obj_type 2 { 3 char a; 4 int b; 5 float c; 6 double d; 7 }
第1种,位置对应赋值
位置对应必须按序列出
1 struct obj_type obj = 2 { 3 10, 4 1000, 5 1.1, 6 1.1111 7 }
按序未列出的即无关参数,但缺省参数必须是排在最后
struct obj_type obj = { 10, 1000 }
第2种,点号访问赋值
点号访问可以指哪打哪,对感兴趣的参数赋值,无关参数缺省,并且赋值项清晰明了
1 struct obj_type obj = 2 { 3 .a =10, 4 .c =1.1 5 }
第3种,冒号指示赋值
同点号赋值
1 struct obj_type obj = 2 { 3 a: 10, 4 c: 1.1 5 }