1个回答
展开全部
一维数组的初始化
说明一个数组变量后,数组元素的值是内存的随机状态值。数组可以在定义的同时进行初始化。形式是以一对花括号给出常量值表,系统按下标顺序(存储顺序)对数组元素进行初始化。给定常数的个数不能超过数组定义的长度。如果给定常数的个数不足,则系统对其余元素初始化为0值。
例如,有说明:
int array4[3]={1,2,3};
int array5[3]={2};
int array6[10]={0};
int array7[3]={1,2,3,4}; //错误
static int array8[6];
const int array9[5]={0,2,4,6,8};
数组array4定义后,有array4[0]=1,array4[1]=2,array4[2]=3。数组array5定义后,有array5[0]=2,array5[1]=0,array5[2]=0。数组array6定义后,对全部元素初始化为0。
数组array7定义错误,因为初始化常量表的常量个数超过数组定义的长度。
只有定义静态数组,才会自动把各元素值初始化为0。因此,array8的定义,以下说明是等价的:
static int array8[6]={0};
static int array8[6]={0,0,0,0,0,0};
array9数组由关键字const约束为常量,所以必须在定义时对其初始化,并且不能在程序代码中对它的元素重新赋值。
数组变量使用的作用域、访问特性等声明形式和性质与普通常量是相同的。
利用初始化值表,可以用初始化数据的个数默认数组长度声明。例如,
double d[]={0.1,0.2,0.3,0.4,0.5};
d数组长度为5,等价于:
double d[5]={0.1,0.2,0.3,0.4,0.5};
说明一个数组变量后,数组元素的值是内存的随机状态值。数组可以在定义的同时进行初始化。形式是以一对花括号给出常量值表,系统按下标顺序(存储顺序)对数组元素进行初始化。给定常数的个数不能超过数组定义的长度。如果给定常数的个数不足,则系统对其余元素初始化为0值。
例如,有说明:
int array4[3]={1,2,3};
int array5[3]={2};
int array6[10]={0};
int array7[3]={1,2,3,4}; //错误
static int array8[6];
const int array9[5]={0,2,4,6,8};
数组array4定义后,有array4[0]=1,array4[1]=2,array4[2]=3。数组array5定义后,有array5[0]=2,array5[1]=0,array5[2]=0。数组array6定义后,对全部元素初始化为0。
数组array7定义错误,因为初始化常量表的常量个数超过数组定义的长度。
只有定义静态数组,才会自动把各元素值初始化为0。因此,array8的定义,以下说明是等价的:
static int array8[6]={0};
static int array8[6]={0,0,0,0,0,0};
array9数组由关键字const约束为常量,所以必须在定义时对其初始化,并且不能在程序代码中对它的元素重新赋值。
数组变量使用的作用域、访问特性等声明形式和性质与普通常量是相同的。
利用初始化值表,可以用初始化数据的个数默认数组长度声明。例如,
double d[]={0.1,0.2,0.3,0.4,0.5};
d数组长度为5,等价于:
double d[5]={0.1,0.2,0.3,0.4,0.5};
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |