数组
数组:保存多个数据类型相同的数据。
1)数组基础
1.数组定义
类类型说明符 数组名[常量];
类型说明符:基本数据类型、构造数据类型(不能是void类型)。说明数组中保存的数据的数据类型。
数组名:遵循标识符的命名规则。
常量:数组中可以保存的元素的个数
int a[10];
sizeof(a); //40字节
char str[32]; //32字节
float array[5]; //20字节
类型说明符 数组名[] = {值1, 值2};
当数组定义时,[]中的个数省略时,必须要初始化,将来按照初始化的元素个数决定数组的元素个数。
2.数组的元素访问
数组名[下标];
[]:下标运算符
下标:代表要访问数组中的第几个元素(0--->元素个数-1)
常量、变量、表达式(结果都应该整形)
注意:
数组元素访问时,下标从0开始到元素个数-1,超出该范围,则数组越界访问。
数组名代表了数组这种类型,不能给数组名直接赋值
3.数据的初始化
如果不初始化,数据默认存放随机值。
- 全部初始化
int a[10] = {1,2,3,4,5,6,7,8,9,0};
- 局部初始化
int a[10] = {1,2,3,4,5};
已初始化部分按照初始化数据存储,未初始化的部分按0存储;
- 初始化全为0
int a[10] = {0,0,0,0,0,0,0,0,0,0};
int a[10] = {0};
4.数据的存储形式
- 单一性:数组中的元素,每个元素的数据类型都一致。
- 有序性:数组中的元素按照a[0]-a[n]的顺序进行存储。
- 连续性:数组在内存中选取连续内存空间存储。
数组越界:
(1)初始化数组时,初始化的元素个数超出了数组本身的元素个数。
(2)访问数组元素时,[]中的下标超出了数组元素的访问范围。