在程序中若使用了比较大的数组,可能会产生stack overflow错误,这是因为默认堆或栈太小所致,对于栈的问题有以下解决方法:
修改工程属性,在vc++界面菜单--〉project--〉Setting--〉category--〉output--〉Stack Alloction中,修改Reserve及Commit(主要是改reserver)。Reserve指定虚拟内存中的总的堆栈分配。默认堆栈大小为 1 MB。commit 取决于操作系统所作的解释。在 Windows NT 和 Windows 2000 中,它指定一次分配的物理内存量。提交的虚拟内存导致空间被保留在页面文件中。更高的 commit 值在应用程序需要更多堆栈空间时可节省时间,但会增加内存需求并有可能延长启动时间。
Windows使用大数组出错的解决办法
最新推荐文章于 2023-04-11 15:36:25 发布