关于数组的认知

数组

数组的概念:

数组就是在内存中连续的相同类型的变量空间.同一个数组所有的成员都是相同的数据类型,同时所有的成员在内存中的地址是连续的.

数组属于构造数据类型,一个数组可以分解为多个数组元素,按数组元素类型的不同,数组可分为:数值数组/字符数组/指针数组/结构数组等类别.

数组的初始化

需要注意的是,在定义数组时,下标中的数只能是常量,而在使用数组时,下标中的数可以是常量也可以是变量.而定义数组的同时进行赋值时,称之为初始化.若全局数组仅声明而不初始化,则编译器默认将数组中的值初始化为0.若仅局部数组未初始化,则其值为随机.

数组名

数组名既是一个地址的常量,同时也指向数组中首元素的地址,它还包含了数组的大小.

多维数组

根据数组的下标数,可分为一维数组或多维数组,而下标中的数则代表数组中的第某个元素.

数组类型 数组名 [n1][n2]…[nn];

字符数组与字符串数组

By the way,在C语言中没有字符串这种数据类型,可以通过char的数组来替代.并且字符串一定是一个char的数组,但char的数组未必是字符串.以0结尾的char数组就是一个字符串,但如果char数组没有以0结尾,那么就不是一个字符串.所以字符串是一种特殊的char的数组.