数组
1. 定义数组
数组定义:单元数据类型 数组名称[单元数量] 如:int num[100]
- 数组是一种容器,特点:
- 其中的所有单元具有相同的数据类型
- 数组一旦创建,不能改变数组的大小
- 数组中的单元在内存中是连续紧密依次排列的
- 单元[索引],[ ]中的数字称为单元的下标或者索引,索引从0开始

数组越界:

2.数组运算
2.1 数组的初始化
// 数组的初始化 // 第一种:先定义数组然后初始化 int num[10]; int i; for (i = 0; i < 10; i++) { num[i] = 0; } // 第二种:数组的集成初始化,编译器自己回去算数组的大小 int num[] = {1,2,3,4,5,6,7,8,9,10}; /* 注:int num[10] = {1} 相当于:int num[] = {1,0,0,0,0,0,0,0,0,0} 故第一种定义也可以写成如下第三种 */ // 第三种,等效于第一种写法 int num[10] = {0}; // 第四种,适用于C99,对于初始化时,指定几个单元的数值,然后剩余的都为0的情况 int num[10] = {[1]=2,3,[5]=6} // 得到的数组为{0,2,3,0,0,6,0,0,0,0}


2.2 数组的大小
sizeof()获得括号里的内容在内存中所占的字节数

2.3 数组的赋值
数组不能直接赋值

2.4 数组作为函数的参数时

3. 二维数组
int a[3][5] 表示一个二维3行5列的数组
a[i][j] 表示数组的第i行第j列上的单元,其实在内存中二维数组还是连续紧密依次排列的
a[i, j] 逗号是一个运算符 i, j 相当于j,故相当于a[j]
3.1二维数组的初始化
二维数组在内存中的排列和一维数组一样,故里面的大括号其实也可以省略。


浙公网安备 33010602011771号