1) 定义变量的同时,可以定义数组 int a[10],b,c;
2) int a1[3+2]; // 数组的角标可以使用常量表达式
3) int n=5; int a2[n]; //其他编译器定义数组的时候,数组长度不能使用变量,但是xcode做了优化,这是可以的
4)#define N 5 int a3[N+3];
5) int a4; int a4[10]; 数组的名称不能和变量名重名 6)数组名的命名原则严格遵守标示符命名原则
(1) 完全初始化(数组的每一个元素都被初始化了)
int a[3]={2,3,4}; //完全初始化 a[0]=2,a[1]=3,a[2]=4
不指定数组长度的完全初始化
int a1[]={2,3,34,4}; //定义int型数组a1,初始化值为2,3,34,4,根据初始化的值,确定数组的长度
(2)部分初始化(只指定数组的一部分初始化值)
int a2[10]={0} //相当于有a2所有的元素都初始化为0
int a3[5]={1,2,3}; // 指定下标的数组元素的初始化
int a4[6]={[3]=100,[0]=23}; //a[3]=100,a[0]=23;没有初始化的值,系统自动初始化为0
2)先定义,后初始化
int a5[3]; a5[0]=1; a5[1]=2; a5[2]=3;
3)数组的引用
int a[n]; 下标的范围:0 ~ (n-1)
3、数组的存储方式
数组在内存中是如何存储的?
1)数组在内存中分配的存储空间是连续的
2)数组名存放的是数组的首地址
3)数组的第一个元素存放到数组内存的低地址(首地址)
4)首地址 = &a[0] = a