C语言基础——数组
数组
本节开始将进入C语言的重点内容——数组。
数组是用来存储类型一致的一组数据。
数组是比较基础的数据结构。此后还会讲解数组的排序,查找等有关数据结构的问题。
一维数组
- 定义
类型名 数组名[常量表达式]
例:
int stu = [10];
这里定义了一个长度为10的数组,也就是可以连续的存储10个int类型的数据。其访问可通过下标进行读取(下标是从0开始计算)。
二维数组
- 定义
类型名 数组名[常量表达式][常量表达式]
例:
int stu = [10][8];
这里定义了一个10行8列的数组,即每行中可以存储8个元素,可以将二维数组想象成一张表来看,
字符数组与字符串
- 区别
字符数组是char类型定义的数组,里面存放的是一个个 的ASCII码,而字符串也是将一个个的字符存储在一起,但最后一个字节要存放’\0’也就是ACSCII码为0的值。
数组在内存中的表现形式
- 数组定义后其值不可被修改。
- 数组名是数组首元素的地址
以nt类型为例,其内存存储如下
0000 0000 |
---|
0000 0000 |
0000 0000 |
0000 0000 |
0000 0001 |
0000 0001 |
0000 0001 |
0000 0001 |
…… |
即每4个字节为一个int类型,依次排列。
二维数组也是类似,是按照列来排列,比如:
第一列有8个元素,会将这8个元素依次存放入内存,然后再存放第二行的8个元素等。