Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/146.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++;数组和窗口出口 我是C++新手,但我精通C语言,java语言。但没关系。我想创建跳棋游戏仿真。我为窗口加载添加了新事件。这就是我所做的事情的来源: private: System::Void Form1_Load(System::Object^ sender, System::EventArgs^ e) { int matr[7][7]; int i, j; int prevBlack = 1; int prevRow = 0; int current = 0; for (i = 0; i < 8; i++) { if ((i + 1) % 2 == 0) { prevBlack = 0; } else { prevBlack = 1; } for (j = 0; j < 8; j++) { if (prevBlack == 1) { current = 0; } else if (i == 0 || i == 1 || i == 2) { current = 2; } else { current = 1; } matr[i][j] = (int)current; if (current == 1 || current == 2) { prevBlack = 1; } else { prevBlack = 0; } } prevRow = i; } } private:System::Void Form1\u Load(System::Object^sender,System::EventArgs^e){ 国际材料[7][7]; int i,j; int-prevBlack=1; int-prevRow=0; int电流=0; 对于(i=0;i_C++_Arrays_Matrix - Fatal编程技术网

C++;数组和窗口出口 我是C++新手,但我精通C语言,java语言。但没关系。我想创建跳棋游戏仿真。我为窗口加载添加了新事件。这就是我所做的事情的来源: private: System::Void Form1_Load(System::Object^ sender, System::EventArgs^ e) { int matr[7][7]; int i, j; int prevBlack = 1; int prevRow = 0; int current = 0; for (i = 0; i < 8; i++) { if ((i + 1) % 2 == 0) { prevBlack = 0; } else { prevBlack = 1; } for (j = 0; j < 8; j++) { if (prevBlack == 1) { current = 0; } else if (i == 0 || i == 1 || i == 2) { current = 2; } else { current = 1; } matr[i][j] = (int)current; if (current == 1 || current == 2) { prevBlack = 1; } else { prevBlack = 0; } } prevRow = i; } } private:System::Void Form1\u Load(System::Object^sender,System::EventArgs^e){ 国际材料[7][7]; int i,j; int-prevBlack=1; int-prevRow=0; int电流=0; 对于(i=0;i

C++;数组和窗口出口 我是C++新手,但我精通C语言,java语言。但没关系。我想创建跳棋游戏仿真。我为窗口加载添加了新事件。这就是我所做的事情的来源: private: System::Void Form1_Load(System::Object^ sender, System::EventArgs^ e) { int matr[7][7]; int i, j; int prevBlack = 1; int prevRow = 0; int current = 0; for (i = 0; i < 8; i++) { if ((i + 1) % 2 == 0) { prevBlack = 0; } else { prevBlack = 1; } for (j = 0; j < 8; j++) { if (prevBlack == 1) { current = 0; } else if (i == 0 || i == 1 || i == 2) { current = 2; } else { current = 1; } matr[i][j] = (int)current; if (current == 1 || current == 2) { prevBlack = 1; } else { prevBlack = 0; } } prevRow = i; } } private:System::Void Form1\u Load(System::Object^sender,System::EventArgs^e){ 国际材料[7][7]; int i,j; int-prevBlack=1; int-prevRow=0; int电流=0; 对于(i=0;i,c++,arrays,matrix,C++,Arrays,Matrix,问题是matr[i][j]=(int)电流在这部分代码的末尾,我的程序退出。当注释这部分代码时,将显示一个窗口 我不知道为什么会这样。数组是8x8。我需要您的帮助:)当您将数组声明为matr[7][7]时,它的大小将为7x7,有效索引将为0..6。但是您正在使用索引0..7访问此数组,这将导致错误 由于需要8x8阵列,因此应将阵列声明为matr[8][8]。将阵列声明为matr[7][7]时,其大小为7x7,有效索引为0..6。但是您正在使用索引0..7访问此数组,这将导致错误 您应该将阵列声明

问题是
matr[i][j]=(int)电流在这部分代码的末尾,我的程序退出。当注释这部分代码时,将显示一个窗口


我不知道为什么会这样。数组是8x8。我需要您的帮助:)

当您将数组声明为
matr[7][7]
时,它的大小将为7x7,有效索引将为0..6。但是您正在使用索引0..7访问此数组,这将导致错误


由于需要8x8阵列,因此应将阵列声明为
matr[8][8]

将阵列声明为
matr[7][7]
时,其大小为7x7,有效索引为0..6。但是您正在使用索引0..7访问此数组,这将导致错误


您应该将阵列声明为
matr[8][8]
,因为您需要一个8x8阵列。

只需添加。。。因为你写的内容超过了数组的末尾,你很可能会覆盖堆栈上的返回地址,所以当函数试图返回到调用方时,你的程序会南下。。。由于写入的时间超过了数组的末尾,因此很可能会覆盖堆栈上的返回地址,因此当函数尝试返回调用方时,程序会南下。