在函数 C++ 中分配内存 2d 数组
Allocate memory 2d array in function C++
我正在尝试为 C++ 函数内的 2D 数组动态分配内存。除了它是使用 malloc 和 dealloc 编写的之外,已经提出了一个完全相同的问题,所以我想知道您是否可以帮助我将其转换为使用 new 和删除。这是另一个问题:
在函数 C 中分配内存 2d 数组
我尝试将其更改为以下代码,但出现错误。
void assign_memory_for_board(int ROWS, int COLS, int *** board) {
*board = new int**[ROWS];
for (int i = 0; i < ROWS; i++) {
(*board)[i] = new int*[COLS];
}
}
以下是使用 malloc 和 dealloc 的答案:
void allocate_mem(int*** arr, int n, int m)
{
*arr = (int**)malloc(n*sizeof(int*));
for(int i=0; i<n; i++)
(*arr)[i] = (int*)malloc(m*sizeof(int));
}
谢谢!
你有额外的星星。函数应该是
void assign_memory_for_board(int ROWS, int COLS, int *** board) {
*board = new int*[ROWS];
for (int i = 0; i < ROWS; i++) {
(*board)[i] = new int[COLS];
}
}
试试吧
int AllocMatrix(int ***K, int h, int c){
*K = new int *[h];
for(int i=0; i < h; i++){
*K[i] = new int[c];
}
if(K == NULL){
return 0;
}
cout<<"Avaiable!"<<endl;
return 1;
}
相关文章:
- 分配具有 2D 向量大小的变量的内存
- 我在 2D 数组的动态内存分配中遇到了一些奇怪的代码C++? 请解释一下这是什么?
- 在C++中使用 2D 矢量时出现明显的内存泄漏
- 在统一内存 CUDA C/C++ 中分配 2D 向量
- 如何在CuPy中分配音调2D内存
- 在 C++ 中,用于将大型 2D 数组转换为 1D 数组的内存分配
- 解除分配此特定 2D 阵列的内存
- 如何在 2d 矢量上进行内存设置
- 指向结构的指针的 2D 数组.内存访问问题
- 2D 区域的内存布局
- 将内存分配给 2D 数组时,“new int*[rowCount];”的含义是什么?是 2D 数组,是指向数组的指针数组
- 使用 DX11 加载 2D 纹理时内存泄漏
- 2D 数组内存分配 (malloc) 返回 NULL
- 带有指针的 2D 数组中的内存泄漏
- 如何将内存映像分配给DLIB阵列2d或映像
- 打印2D阵列时内存泄漏
- Buffer.BlockCopy Array 2d c++ to C# 共享内存
- 奇怪的C++2D阵列的内存泄漏
- 使用MPI和C 发送静态内存2D数组
- 在函数 C++ 中分配内存 2d 数组