一维数组
1、数组是第一种构造类型。
int [10] arr; ---> int arr[10];
2、两个凡是
①凡是构造类型,要么在定义的时候初始化, 要么对集合中的每个元素单独初始化。定义以后,不可以再以初始化的方式初始化。
②凡是基础数据类型,既可以在定义的时候初始化,也可以先定义后初始化。
3、数组三要素:起始地址(arr),步长(int),范围(10)。
4、数组的下标为什么从零开始?
[ ] 是一种基址变址运算符。基于起始位置偏移0个单位处,开始存放数据,故下标从0处开始.
5、变长数组:变长数组是指用整型变量或表达式声明或定义的数组,而不是说数组的长度会随时
变化,变长数组在其生存期内的长度同样是固定的。
二维数组
int[4] arr[3]; --> int arr[3][4];
1、二位数组逻辑上是二维的,在内存中的存储是一维的。按行顺序存储。
2、数组三要素:int arr[3][4];
数组名的二义性
数组名,是数组的唯一标识符,既表示一种构造数据类型的大小(即sizeof(int[10])与sizeof(arr)是相等的),也表示访问组中的成员的首地址,用来访问数据成员使用。
学习资料: 《零基础入门C语言--王桂林》