数组初始化的三种形式如下:
数据类型 数组名称[数量n] = {元素1,元素2…元素n};
数据类型 数组名称[] = {元素1,元素2…元素n};
数据类型 数组名称[数量n];
数组名称[0] = 元素1;
数组名称[1] = 元素2;
...
数组名称[n-1] = 元素n;
(借鉴于CSDN:c语言入门这一篇就够了-学习笔记(一万字))
举例说明:
int num[5]={1,2,3,4,5};
int num[]={1,2,3,4,5};
int num[5];
num[0]=1;//注意:下标是从0开始的。
num[1]=2;
num[2]=3;
num[3]=4;
num[4]=5;
注意:定义和引用的下标是从0开始的。
数组初始化辨析1:
int num[i] ;
不行,是错误的,不能是变量。
int i=1;
int num[i++];
可以,是正确的,可以引用。
int num[3.15];
不行,是错误的,必须是整数。(元素的个数必须是整个,这样才能分配地址)
int num[5/3];
可以,是正确的,此处5/3=1,即为int num[1];
数组初始化辨析2:
int num[]={1,2,3,4,5};
可以,能确定申请多少空间。
int num[];
a[0]=1;
a[1]=2;
......
不可以,不能确定申请多少空间。
数组初始化辨析3:
a[5]={1,2,3,4,5};
printf("%d",a);=printf("%d",&a[0]);
总结:
(1)数组是具有相同类型的集合,数组的大小(即所占字节数)由元素个数乘以单个元素的大小。
(2)数组只能够整体初始化,不能被整体赋值。只能使用循环从第一个逐个遍历赋值。
(3)初始化时,数组的维度或元素个数可忽略 ,编译器会根据花括号中元素个数初始化数组元素的个数。
(4)当花括号中用于初始化值的个数不足数组元素大小时,数组剩下的元素依次用0初始化。
(5)字符型数组在计算机内部用的时对应的ascii码值进行存储的。
(借鉴于CSDN:c语言—数组详解(建议收藏))
既然没有终点,那在何处又何妨呢。
希望对你有帮助,语言学习贵在坚持输入和输出!