我是c ++及其开发人员的新手。我用了
static const int ipx[7][2] = { {-1, 0}, {-1, -1}, {-1, 1}, {-2, 0}, {-2, -1}, {-2, 1}, {0, 0} };
当我打印该数组的值时,得到的结果如下。谁能解释为什么会这样。谢谢
printf("-> %i \n",ipx[3][1]); // prints -> 0
printf("-> %i \n",ipx[7][1]); //prints-> 28
printf("-> %i \n",ipx[7][0]); //prints ->-> 1
printf("-> %i \n",ipx[5][1]); //prints -> 1
预先感谢您。
最佳答案
C ++数组的索引为0,因此打印出ipx[7][0]
是未定义的行为,因为索引针对7个元素的数组运行0..6
。您可能想要ipx[2][1]
,ipx[6][1]
,ipx[6][0]
和ipx[4][1]
。
关于c++ - C++多维数组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29135785/