【C++】Run-Time Check Failure #2 - Stack around the variable ‘p‘ was corrupted.

在学习C++时遇到Run-Time Check Failure #2错误,该错误提示栈变量'p'周围被破坏。尝试将项目属性中的‘基本运行时检查’设回默认值未解决问题。博客作者推测可能是由于项目过大导致的堆栈溢出,通过新建项目并单独放置当前学习代码,问题得到解决。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

今天在学习C++时碰到了Run-Time Check Failure #2 - Stack around the variable 'p' was corrupted.这个问题。

解决途径:

1、博客1:在“ 项目 ---- 属性 ---- 配置属性 ---- C/C++ ---- 代码生成 ---- 基本运行时检查:”设置为默认值。
没有解决我的问题。

2、博客2:发现这样的错误是程序员在项目到了一定大的时候,它占用的堆栈量就比较大。我也深有体会。因为自己本来编写一个类,运行时没有错,但是在添加成员属性的时候,在其它方式不变的情况下就容易发生这样的错误。所以据此我猜应该是VS2005(2008)在内部就限定了堆栈的大小,当项目足够大的时候,就会溢出
我把之前学习的所有文件都放在了同一个项目中,所以可能是这个问题导致的,因此新建了个项目,仅放了当前学习的代码,就不再报错了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值