[C++]报错:Run-Time Check Failure #2 - Stack around the variable ‘xxx‘ was corrupted

昨天手动实现KMP算法时出现这个报错,算法中我创建next数组方式为int next[MaxSize]

 调试过后发现继续运行能正常出结果,但每次运行到这里都会报错

字面意思是next数组附近的堆栈内存被破坏了

发生此报错一般有两种情况:

        第一 -> 数组下标越界。这也是最常见的问题原因,解决办法是检查数组是否有越界情况,如果有的话创建一个更大的数组

        第二->编译器本身问题。

        我这里自己测试过应该不是数组越界的原因,因为每次调试后都能得出正确结果

 所以在网上搜索后得出以下两种解决办法

                1).把“project->配置属性->c/c++->代码生成->基本运行时检查 设置为默认值。

                2).创建数组的方式改用new或者malloc,改为正常运行

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Grey.yschakk

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值