简单地说,可以使用定义数组
int arrayValues = {1,2,3,4,5};
您如何在类似的庄园中定义双数组,以免将其写出来?
int magicArray[rowSize][colSize];
magicArray[0][0] = 4;
magicArray[0][1] = 3;
magicArray[0][2] = 8;
magicArray[1][0] = 9;
magicArray[1][1] = 5;
magicArray[1][2] = 1;
magicArray[2][0] = 2;
magicArray[2][1] = 7;
magicArray[2][2] = 6;
是否可以写类似...
int magicArray[rowSize][colSize] = { {x,y,value}, {0,0,1}}
最佳答案
二维数组与内存中的一维数组相同。它们都只是指针。将您的数组创建为一维数组,对其进行初始化,然后创建您的二维数组并将其指向相同的指针。
我没有方便的测试环境,并且有一段时间没有使用C ++,因此请谨慎使用,并以此作为起点:
int tempArray[rowSize*colSize]={4,3,8,9,5,1,2...};
int magicArray[rowSize][colSize];
magicArray=tempArray;