C++ 程序终止时状态为-1073741510,处于循环中间,用于将输入分配给二维阵列

C++ 程序终止时状态为-1073741510,处于循环中间,用于将输入分配给二维阵列,c++,for-loop,multidimensional-array,C++,For Loop,Multidimensional Array,我正在做一个自学计划,我正在使用的这本书希望我做一个计划,在2-D阵列中保持3年的月销售额。问题是,当我输入“2018年4月”的销售额时,该过程终止,状态为-1073741510 我寻找其他人,他们的程序以相同的状态终止,被零除的错误似乎是原因,但是我看不出这个程序如何在这个分配循环中得到被零除的错误 #包括 使用名称空间std; const int Years=3; const int Months=12; int main() { 常量字符*月[月]={“一月”、“二月”、“三月”、“四月”

我正在做一个自学计划,我正在使用的这本书希望我做一个计划,在2-D阵列中保持3年的月销售额。问题是,当我输入“2018年4月”的销售额时,该过程终止,状态为-1073741510

我寻找其他人,他们的程序以相同的状态终止,被零除的错误似乎是原因,但是我看不出这个程序如何在这个分配循环中得到被零除的错误

#包括
使用名称空间std;
const int Years=3;
const int Months=12;
int main()
{
常量字符*月[月]={“一月”、“二月”、“三月”、“四月”,
“五月”、“六月”、“七月”、“八月”、“九月”,
“十月”、“十一月”、“十二月”};
const char*年[年]={“2016”、“2017”、“2018”};
国际销售额[年][月];
int i=0;
int j=0;

cout这是不可能的,因为当你在一年中经历了所有的月份时,你没有把
j
放回
0
。当你做
i++;
,也做
j=0;

当我刚刚编辑代码在输入后立即输出值时,我突然得到了一个非常奇怪的输出是销售[2][0]。然后注意到它确实不是销售[2][0]正如我所希望的。谢谢你指出。没问题,很高兴它有帮助!多维数组的错误可能有点棘手,因为如果索引错误,它内部计算的内存地址可能对应于数组的不同部分,从而导致在指定位置被覆盖时覆盖错误的位置tays未初始化。@MarekR我将进一步研究如何使用调试器,谢谢!