📜  C数组(1)

📅  最后修改于: 2023-12-03 15:30:15.094000             🧑  作者: Mango

C 数组

C 语言中的数组是一种用于存储相同类型元素的数据结构。数组可以保存多个相同类型的值,这些值被存储在均匀间隔的内存空间中。

数组的定义

在 C 语言中,我们可以通过定义以下形式的数组变量来声明一个数组:

type arrayName[arraySize];

其中,type 是数组元素的数据类型,arrayName 是我们起的数组名,arraySize 是数组中元素的数量。

例如,以下代码声明了一个包含 10 个整数元素的数组:

int arr[10];
数组的初始化

我们可以使用大括号 {} 来初始化数组中的元素。初始化时,我们可以使用以下语法:

type arrayName[arraySize] = {value1, value2, ..., valueN};

其中,value1 ... valueN 是要存储在数组中的元素。如果没有显式提供一个或多个元素的值,则编译器将把它们初始化为 0

例如,以下代码声明和初始化了一个包含 5 个整数元素的数组:

int arr[5] = {0, 1, 2, 3, 4};
数组的访问

我们可以通过数组名和元素索引来访问数组中的元素。数组中的第一个元素的索引为 0,最后一个元素的索引为 arraySize - 1

例如,以下代码将访问数组 arr 中的第一个元素和最后一个元素,并将它们加在一起:

int sum = arr[0] + arr[4];
多维数组

C 语言中的数组可以具有多个维度。我们可以使用以下语法来声明多维数组:

type arrayName[size1][size2]...[sizeN];

其中,type 是数组元素的数据类型,arrayName 是我们起的数组名,size1size2 等是各个维度上的大小。

例如,以下代码声明了一个包含 3 x 2 个整数元素的二维数组:

int arr[3][2];

我们可以通过使用嵌套的方括号和逗号分隔的索引值来访问多维数组中的元素。例如,以下代码将访问二维数组 arr 中的第一个元素,并将其打印到控制台:

printf("%d", arr[0][0]);
数组的长度

在 C 语言中,是没有内置的数组长度函数或属性的。通常,我们需要在程序中手动跟踪数组的长度。

可以通过以下公式计算数组的长度:

arraySize = sizeof(arrayName) / sizeof(arrayName[0]);

其中,sizeof(arrayName) 返回整个数组的字节大小,sizeof(arrayName[0]) 返回第一个元素的字节大小。

总结

在 C 语言中,数组是一个非常重要且有用的数据结构。我们可以通过使用数组来存储和操作同类型的数据。我们可以在程序中声明、初始化、操作和访问数组,并使用各种技术来跟踪数组的长度。