📜  C++数组(1)

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

C++数组

数组是C++中最基本的数据结构之一,通常用于存储一系列相同数据类型的元素。C++中的数组是一个连续的内存单元,在内存中定义了一个固定长度的数据类型。

定义数组

在C++中定义数组的语法如下所示:

dataType arrayName[arraySize];

其中,dataType是指数组中元素的数据类型,arrayName是数组的名称,而arraySize指定数组的大小。

以下是一个定义包含5个整数的数组的例子:

int numbers[5];

也可以同时初始化数组:

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

数组中的元素可以通过它们的索引(位置)访问。索引从0开始,因此第一个元素的索引为0,第二个元素的索引为1,以此类推。

以下是如何访问数组中的元素:

int main() {
  int numbers[5] = {1, 2, 3, 4, 5};
  cout << numbers[0]; // 输出第一个元素
  cout << numbers[4]; // 输出最后一个元素
  return 0;
}
多维数组

C++也支持多维数组,例如2维数组可以这样定义:

int matrix[3][3] = {
   {0, 1, 2},
   {3, 4, 5},
   {6, 7, 8}
};

访问多维数组中的元素类似于访问一维数组,只需要提供多个索引即可。

数组指针

数组名实际上是数组中第一个元素的地址。因此,可以创建指向数组的指针,如下所示:

int numbers[5] = {1, 2, 3, 4, 5};
int *p;
p = numbers; // 指向数组的第一个元素

p现在是指向数组numbers的第一个元素的指针。要访问数组中的元素,可以使用指针加上元素的索引:

cout << *(p + 1) << endl; // 输出第二个元素
注意事项

在C++中,访问数组元素时没有边界检查,因此必须确保不要越界。此外,数组名是一个非常特殊的指针,不能将数组名与指针混用,否则可能会出现问题。

结论

数组是C++中最基本的数据结构之一,用于存储一系列相同的数据类型。C++中可以定义一维和多维数组,并使用索引访问数组元素。此外,指向数组的指针也是一种常用的技术。