数组
1、数组的概念
由相同类型的多个元素所组成的一种复合数据类型
在工程中同时定义多个相同类型的变量时,重复定义,可以使用数组
逻辑:一次性定义多个相同的变量,并存储到一片连续的内存中
格式
类型说明符 数组名[整型常量表达式];
类型说明符:指定数组元素的数据类型,任意c语言合法类型都可以
数组名 : c语言标识符,其值为该数组的首地址(常量)
int a[5]; 定义一个数组a,该数组一共有五个元素,每个元素都是int类型
printf(" %d\n",sizeof(a));因为a是int整型,sizeof(a)=20;所以数组a占20个字节,用sizeof(a)除以sizeof( a[0] )可以得到数组a的元素个数。
数组申请的空间是连续的,从低地址到高地址依次连续存放数组中的每个元素
初始化:在定义的时候赋值,称为初始化
int a[4] = {1,2,3,4};初始化1个一维数组a,申请4个空间,一个空间4个字节,分别存放1,2,3,4;
int a[] = {1,2,3,4};自动根据初始化列表分配数组元素个数
int a[5] = {100,200,300,400,500,600}; 错误,越界了,申请了5个空间,却放了六个数据。
int b[10] = {68,70}; 初始化一部分空间,剩余的空间默认初始化为0
2、数组元素的引用
元素下标:数组开头位置的偏移量
数组名[下标]
"下标":C语言的下标是从0开始,下标必须是>=0的整数
a[0]、a[1]、a[n]
引用数组元素a[i]和普通变量一样,既可以作为左值,也可以作为右值
下标最小值为0,最大值为n-1 元素个数 n
int a[5]; // 有效的下标范围是 0 ~ 4
a是数组的名字,代表最大元素类型的首地址