今天写一道动态规划题目开一个二维数组ans[1001][1001],编译后出现异常。
修改数组大小后则运行成功,猜测是数组过大导致报错。
查阅资料后发现是变量申请的空间过大。局部变量的申请空间存放在栈中,且windows默认栈内存是1M,而我开的数组空间大于了1M于是出现了溢出错误。
因为本人写算法题目能力有限,没有想到可以替代开一个1001*1001大小数组的方法,于是选择了扩大栈空间的大小。
下面是扩展栈空间大小的方法(VS2019)
项目-属性-配置属性-链接器-系统-堆栈保留大小
我参考网上的方法将其修改为102410245=5242880,即5M。

然后就不会报错了。