📜  C++多维数组(1)

📅  最后修改于: 2023-12-03 14:59:51.899000             🧑  作者: Mango

C++多维数组

在C++中,多维数组是由一维数组构成的数组。可以创建二维、三维或更高维的数组,以适应复杂问题的需要。本文将介绍如何创建和使用多维数组。

创建多维数组

可以使用以下语法来声明多维数组:

data_type array_name[size1][size2]...[sizeN];

其中,data_type 是数据类型,array_name 是多维数组的名称,size1size2、...、sizeN是数组的维数和长度。

例如,下面的代码声明了一个二维整数数组:

int arr[2][3];

这将创建一个由两个一维数组(每个数组包含三个元素)组成的二维数组。

初始化多维数组

可以使用两种方法来初始化多维数组。一种是逐个初始化每个元素,如下所示:

int arr[2][3] = {
  {1, 2, 3},
  {4, 5, 6}
};

另一种方法是使用嵌套的大括号来初始化所有元素,如下所示:

int arr[2][3] = {
  {1, 2, 3},
  {4, 5, 6}
};

注意,不完全初始化的多维数组中的剩余元素将自动初始化为0。

访问多维数组

可以使用以下语法来访问多维数组的元素:

array_name[index1][index2]...[indexN]

其中,array_name 是数组名称,index1index2、...、indexN是将要访问的元素的索引。索引从0开始,最大值为数组长度减1。

例如,以下代码将访问二维数组 arr 的第一个元素:

cout << arr[0][0];
多维数组作为函数参数

可以将多维数组作为函数参数传递。在函数定义中,必须指定数组的长度或传递指向数组的指针。以下是一个将二维数组作为函数参数的示例:

void printArr(int (*arr)[3], int size1) {
  for (int i = 0; i < size1; i++) {
    for (int j = 0; j < 3; j++) {
      cout << arr[i][j] << " ";
    }
    cout << endl;
  }
}

int main() {
  int arr[2][3] = { {1, 2, 3}, {4, 5, 6} };
  printArr(arr, 2);
  return 0;
}

请注意,在函数定义中,第一个参数被指定为指向长度为3的整数数组的指针。在函数调用中,我们传递了一个指向长度为3的整数数组的指针 arr,以及第一个维度的大小 2。

总结

多维数组是由一维数组构成的数组,可用于解决复杂问题。在C++中,可以声明和初始化多维数组,访问多维数组的元素,以及将多维数组作为函数参数传递。