1.一维数组的定义和初始化
数组是包含给定类型的一组数据,并将这些数据依次存储在连续的内存空间。每个独立的数据被称为数组的元素。元素的类型可以是任意型。数组本身也是一个结构,其类型由它的元素类型和数量所决定。
数组的定义决定了数组名,元素类型以及元素个数。
其语法如下:<类型>数组名[<元素数量>];
元素数量在方括号([ ]) 之间,它必须是大于0的整型常量表达式。
数组的大小在编译时确定,编译系统按照定义为数组分配一段连续的存储单元,这段存储单元的大小也是不能改变的,因此数组大小不能用变量定义,而只能是一个正整数常量。
2.数组在内存中的形式
3.一维数组的使用
数组在存储单元中是顺序连续存放的,任何一个元素都可以单独访问,其标识方法是用数组名和小标;数组名[整形表达式],整形表达式可以是变量,也可以是常量,但必须是整型类型。
4.数组下标为什么从0开始?
这我们就得聊聊数组和指针之间的关系了。
比如说,定义了一个数组 int a[10];
我们知道数组名表示的是首元素的地址,那么第一个元素是a[0],也就可以表示为*(a+0);
其意义为我们给数组名(也就是首元素地址)+0,然后进行解引用操作,地址的偏移量,所以解引用的结果就是第一个元素本身。
同理,第二个元素a[1],也就可以表示为 *(a+1);
其意义是首元素地址向后偏移1个整形大小,然后对其进行解引用操作,访问的就是第二个元素。



