一维数组的定义
类型说明符 数组名[常量表达式]
比如:int a[10] ; float b[10]
这条语句定义了有10个元素的int型数组a,a[0],a[1],a[2]…a[9;]
定义了有10个元素的float型数组b,b[0],b[1],b[2]…b[9;]。
定义比较简单,有几点说明必须要注意:
几点重要的说明
- 数组名的命名规则与变量名命名规则相同;
- 常量表达式的值代表数组元素的个数;
- 一个数组的所有元素是同种类型的一组变量;比如float b[10]中,b[0],b[1],b[2]…。b[9],每一个都是float类型;
- 同一个数组中,数组名不能和变量名相同;
- 允许在同一个类型说明中定义多个数组和变量;比如 int a,b[5];
- 常量表达式可以是常量或者符号常量,但不能是变量。不能对数组的大小做动态定义;
- 系统为数组元素分配的内存空间是连续的;
一维数组的初始化
int a[5]={1,3,5,7,9};
数组元素被初始化为 a[0]=1,a[1]=3,a[2]=5,a[3]=7,a[4]=9.
几点说明
-
可以只给部分元素赋初值 如int a[6]={1,5};表示a[0]=1;a[1]=5;其余元素为0
-
对全部元素赋值时,允许省略长度 int[]={1,2,3,4,5,6,7};
-
若数组元素初始值全为0,则 int x[6]={0}; 不能 int x[6]=0;大括号不能丢。
-
不能将数组变量赋值给另一个数组变量,不允许 int a[3]={1,3,5};int b[] =a;
可以采用遍历循环的方式for(i=0;i<length;i++) b[i]=a[i] -
数组大小的求法,可以是 sizeof(a)/sizeof(a[0]);