数组
数组的概念
数组是一组相同类型元素的集合
数组至少存放1个元素
数组中存放的多个数据类型要相同
一维数组
创建
type arr_name [常量值];
type指定数组中存放的数据类型,可以是 char、short、interesting、float等,也可以自定义
arr_name表示数组名称,起的有意义就行
[ ]中的常量值指定数组的大小,也可以不填,以{ }中的元素个数为准
初始化
完全初始化 int arr[5] = {1,2,3,4,5};
不完全初始化 int arr[6] = {1}; 第一个元素为1,其他元素默认初始化为0
数组类型
type [常量值]
下标
从0开始,按顺序依次增加
[ ]:下标引用操作符,arr[0]表示下标为0的元素
在内存中的存储
数组在内存中是连续存储的,随下标的增长,地址也随之增长
sizeof可以计算数组的大小(单位是字节)进而计算元素个数(数组的大小除以每个元素的大小)
二维数组
以一维数组为元素的数组叫做二维数组
创建
type arr_name[常量值1][常量值2]
常量值1表示行
常量值2表示列
初始化
不完全初始化 int arr1[3][5] = {1,2};
完全初始化 int arr2[3][5] = {1,2,3,4,5, 2,3,4,5,6, 3,4,5,6,7};
按照行初始化 int arr3[3][5] = {{1,2},{3,4},{5,6}};
初始化时可以省略行,不能省略列
int arr4[ ][5] = {1,2,3};
下标
行列都是从0开始
例如 arr[2][3] 表示第3行第四列的数据
在内存中的存储
二维数组在内存中也是连续存放的
C99中的变长数组
C99标准之后,允许我们使用变量指定数组大小
devC++,小熊猫C++ 中使用的是gcc,gcc支持变长数组
VS2022不支持变长数组