一维数组
一维数组定义格式:类型说明符 数组名 【常量表达式】
例:int a[10]
数组的长度是一定是确定的
int a[10]; //定义有10 个整型元素的数组,在内存里面连续存储。
定义 int a[10];10表示长度,有10个元素,访问a[10]没有这个元素,只有a[0]—a[9]。
a[0]一定存在低地址 a[9]一定存在高地址。
printf("%d\n",a); 错误 //不能直接输出整型数组。
int a[10]; //没有初始化,未初始化的局部变量是垃圾值,未初始化的全局变量是0。
int a[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; //对所有元素初始化。
int a[10] = {1, 2, 3}; 对部分元素初始化,没初始化的元素变成0。
int a[] = {1, 2, 3, 4, 5, 6}; //可以不指定数组长度,但一定要初始化。
int a[10] = {0}; //对所有元素初始化成0。
元素的地址取4个地址中的第一个,而数组的地址取第一个元素的地址。
&:取地址符号。 &a[0] 取a[0]的地址。
printf("%p\n",a); //a表示数组首元素地址,和&a[0]意义一样。
printf("%p\n,&a"); //&表示数组的地址。
a+1:加到下一个元素。 &a+1:加到下一个数组。