我正在尝试将二维数组复制到另一个二维数组中,我创建了这两个数组:
#define mapXcor 50
#define mapYcor 50
char secondStage [mapXcor][mapYcor];
char currentStage [mapXcor][mapYcor];
//mapXcor and mapYcor are constant integers
现在我的secondStage[][]
数组上填充了值,但currentStage[][]
不是,我想分配 to 的secondStage
值currentStage
。所以我创建了下面的函数:
void populateArray(char (&arrayA)[mapXcor][mapYcor], char arrayB[mapXcor][mapYcor]) {
for(int a = 0; a < mapXcor + 1; ++a) {
for(int b = 0; b < mapYcor + 1; ++b) {
arrayA[mapXcor][mapYcor] = arrayB[mapXcor][mapYcor];
}
}
}
populateArray(currentStage[mapXcor][mapYcor],secondStage[mapXcor][mapYcor]);
但是当我使用该功能时,它给了我一个错误:
1 IntelliSense:“char (&)[20][50]”类型的引用(非 const 限定)不能用“char”类型的值初始化
2 IntelliSense:“char”类型的参数与“char (*)[50]”类型的参数不兼容
我该如何解决这个问题?