Visual Stdio 调试出现0xC00000FD:Stack overflow原因及解决方法


原因:

  由于系统分配给一个进程的栈空间是一定的,当一个pp文件中的栈空间大于系统为该进程所分配的栈空间时,就会报栈溢出错误。

解决方法:
方法一:动态分配内存
  不要静态分配内存,用new或malloc来动态创建,从堆中分配内存,因为堆的空间足够大。但是要记得使用free或delete手动释放内存,否则会造成内存泄漏。

方法二:修改Visual Stdio Stack 默认设置
  操作步骤:【项目】>【属性】>【链接器】>【系统】>【堆栈保留大小】/【堆栈提交大小】

关于堆栈保留大小和堆栈提交大小的缺省值为:

所以将这两个选项的值改大一点即可。

然后点击应用,确定,就可以了。



上一篇:Qt cannot initialize object parameter of type ‘QWidget‘ with an expression of type ‘QMainwindow‘

下一篇:VisualStudio写Qt项目时,ui界面拖拽的控件代码找不到引用的解决办法


VisualStudio
Copyright © 2002-2019 k262电脑网 www.k262.cn 皖ICP备2020016292号
温馨提示:部分文章图片数据来源与网络,仅供参考!版权归原作者所有,如有侵权请联系删除!QQ:251442993 热门搜索 网站地图