数组是由同一种数据类型的元素系列构成的。
数组的声明及初始化
type name [size];
此处的type是数组内每个元素的数据类型,name是数组名,size是数组元素的个数。传统上,c要求size是一个常量型整数类型。一个数组在没有初始化前,数组的元素的值是不定的。可以指定带由方括号的元素下标指定某个特定的元素。
int arr[6]={
[5]=212}; //把arr[5]初始化为212
多维数组
二维数组:是一个数组的数组,即主数组包括几个元素,每个元素是一个一维数组。二维数组的初始化参考一维数据,分为行和列
三维数组:例如int box[10][20][30];
一维数组是排成一行的数据,二维数组是放在一个平面上的数据,三位数据则是把平面一层一层叠起来的数据。另外一个理解box的方法是它是数组的数组的数组,即box包含10个元素的数据,其中每个元素又是包含20个元素的数组,这20个数组的每一个又一个包含30个元素的数组。
指针和数组的关系
数组名同时也是改数组首元素的地址。
dates +2 ==&dates[2] //相同的地址
*(dates +2) == dates[2] //相同的值
对地址进行加操作,相当于是地址增加两个元素的字节地址。*对地址进行取值操作。
函数、数组和指针
如果你要对一个数组进行操作,目的让函数返回数组中所有元素的和,你不可能将数组整体传递给一个函数,只能将数组的地址传递给函数进行操作。
函数的原型