首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

构造体内数组成员的初始化

2013-09-12 
结构体内数组成员的初始化struct my{int a[3]}struct my my1对于结构体内的数组应当如何初始化?只能用类

结构体内数组成员的初始化
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

可以自己体会下加大括号与不加大括号的区别

热点排行