一维数组(上)
一、一维数组的定义
一维数组是一种线性的数据结构,它由一系列相同类型的元素按顺序排列组成。
在 C++ 中,其定义形式通常为:数据类型 数组名[数组长度];
例如:int arr[10];
表示定义了一个名为 arr
、包含 10 个整数的一维数组。
二、特点
-
元素类型相同:
数组中的所有元素必须具有相同的数据类型。这确保了数据的一致性和处理的便利性。 -
连续存储:
在内存中,数组的元素是连续存储的,这使得访问元素的速度很快。因为内存地址是连续的,所以通过简单的计算就可以快速定位到特定的元素。
三、储存
- 字节(Byte)是计算机存储容量的基本单位。1 字节等于 8 bit 。常见的数据类型占用的字节数如下:
char
类型通常占用 1 个字节。它通常用于存储单个字符。int
类型通常占用 4 个字节。用于存储整数。float
类型通常占用 4 个字节。用于存储单精度浮点数。double
类型通常占用 8 个字节。用于存储双精度浮点数,具有更高的精度。
数组在内存中的分配是连续的。例如,一个整数类型的数组,每个整数通常占用 4 个字节。
假设我们有以下数组定义:
int arr[5];
因为整数占用 4 个字节,随意这个数组总共占用 5 * 4 = 20
个字节的内存空间。并且,数组的内存地址是连续的,第一个元素的地址最低,最后一个元素的地址最高。
四、数组的访问
通过索引来访问数组中的元素。索引从 0 开始,到数组长度减 1 结束。例如,对于数组 arr[5]
,合法的索引是 0 到 4 。可以使用以下方式访问数组元素:
arr[0] // 访问数组的第一个元素
arr[2] // 访问数组的第三个元素
五、数组的遍历
可以使用循环来遍历数组中的所有元素。常见的循环方式有 for
循环和 while
循环。以下是使用 for
循环遍历数组的示例:
for (int i = 0; i < 5; i++) {
cout << arr[i] << " ";
}
六、数组的初始化
- 可以在定义时直接初始化数组的元素。例如:
int arr[5] = {10, 20, 30, 40, 50};
- 也可以部分初始化,未初始化的元素会被赋予默认值(对于整数类型通常是 0)。例如:
int arr[5] = {10, 20}; // 后面三个元素为 0
八、拓展
- 动态数组
在 C++ 中,可以使用动态内存分配来创建数组,其长度可以在运行时确定。例如,使用new
操作符:
int* dynamicArr = new int[size]; // size 是在运行时确定的数组长度
使用完动态分配的数组后,需要使用 delete[]
释放内存,以避免内存泄漏:
delete[] dynamicArr;
- 多维数组
除了一维数组,还有二维数组、三维数组等。二维数组可以看作是由多个一维数组组成,三维数组可以看作是由多个二维数组组成。例如,二维数组的定义:
int twoDArr[3][4]; // 3 行 4 列的二维数组
多维数组在处理矩阵、图像等数据时非常有用。
这些可能对你有些帮助
- 信友队论坛 UP : 徐熙喆 8 月 8 日上课内容:一维数组
作者制作不易,点个赞吧(^▽^),把作品的热度顶顶!
(赶出来的一篇,有问题的话告知我,我以后因该会每天更新)
(内心:我想要勋章(っ °Д °;)っ)
© 2024 本内容版权归梅耀元所有,未经授权请勿转载。
- 文章很有帮助
- 文章没啥帮助