21xrx.com
2024-11-08 22:22:33 Friday
登录
文章检索 我的文章 写文章
C++如何申请二维动态数组?
2023-06-27 09:07:12 深夜i     --     --
C++ 申请 二维 动态数组

在C++中,要申请二维动态数组,需要使用指针和循环来实现。动态数组是一种在程序运行时动态分配内存的数据结构,与静态数组相比,它的大小可以根据需要进行调整,因此更具灵活性。

首先,声明一个指针类型的二维数组。例如,我们可以使用int**来代表一个二维整型数组。

接下来,使用new关键字来申请内存,指定数组的行数和列数。例如,我们可以使用以下代码来申请一个3行4列的二维整型数组:


int row = 3;

int col = 4;

int** arr = new int*[row];

for(int i = 0; i < row; i++){

  arr[i] = new int[col];

}

在上面的代码中,首先申请了一个指针类型的数组arr,其大小为row,表示二维数组中的行数。然后进入循环,对每一行都申请了一个含有col个元素的一维数组。

最后,可以像访问普通的二维数组一样访问动态申请的二维数组。例如,可以使用以下语句来输出数组中的元素:


for(int i = 0; i < row; i++){

  for(int j = 0; j < col; j++){

    cout<<arr[i][j]<<" ";

  }

  cout<<endl;

}

最后,使用完动态申请的二维数组后,应该使用delete关键字来释放其内存。代码如下:


for(int i = 0; i < row; i++){

  delete [] arr[i];

}

delete [] arr;

在上面的代码中,先使用循环来释放一维数组的内存,然后再释放指针类型的数组arr的内存。

总结来说,申请二维动态数组需要使用指针和循环来实现。在使用完动态申请的数组后,应该使用delete关键字来释放其内存,以避免内存泄漏的问题。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复