这个问题是在之前一个问题的基础上提出的:如何传递已知大小的多维数组的引用
我一直在试图弄清楚如何让我的函数与2D数组引用协同工作。 我的代码简化版如下:
unsigned int ** initialize_BMP_array(int height, int width)
{
unsigned int ** bmparray;
bmparray = (unsigned int **)malloc(height * sizeof(unsigned int *));
for (int i = 0; i < height; i++)
{
bmparray[i] = (unsigned int *)malloc(width * sizeof(unsigned int));
}
for(int i = 0; i < height; i++)
for(int j = 0; j < width; j++)
{
bmparray[i][j] = 0;
}
return bmparray;
}
我不知道如何重写这个函数,使得当我将bmparray作为一个空的unsigned int **传递进来时,它能够工作,以便我可以在一个函数中分配数组的空间,在另一个函数中设置值。