结构体内数组成员的初始化
struct my
{int a[3];}
struct my my1;
对于结构体内的数组应当如何初始化?
只能用类似于my1.a[0] = 1;的代码一个元素一个元素的初始化吗?
有没有类似于my1.a[] = {1,3,5}之类的代码?
[解决办法]
1)只能用类似于my1.a[0] = 1;的代码一个元素一个元素的初始化吗?
是的
2)有没有类似于my1.a[] = {1,3,5}之类的代码?
没有,但是可以在声明时这样赋值.
[解决办法]
my1 = {{1, 2, 3}};
[解决办法]
struct my my1 = {{1,2,3}};
[解决办法]
struct my
{
int a[3];
int b;
};//定义结构体,大括号后面记得加分号
类似初始化需要在定义的时候进行。
如:
struct my my1 = {{1,2},3};
//my1.a[0]为1
//my1.a[1]为2
//my1.a[2]为0
//my1.b为3
struct my my1 = {1,2,3};
//my1.a[0]为1
//my1.a[1]为2
//my1.a[2]为3
//my1.b为0
可以自己体会下加大括号与不加大括号的区别