关于设置栈空间大小,该怎么解决
关于设置栈空间大小
大家好,我在vs2008写了以下测试程序:
发现编译器提示“ 应用程序发生异常 unknown software exception (0xc00000fd),位置为 0x0042d8e7。”出错。
我已经把“项目属性->链接器->系统->堆栈提交大小”设置为3000000,不知道为什么还会提示栈空间不足呢?请问是什么原因导致设置失效?或者由其它什么原因引起的呢?谢谢大家!
------解决方案--------------------
这是多大啊,字节?
操作系统自身是有限制的,不是你要多少就多少的...
linux下用Ulimit,win下木知。
------解决方案--------------------
怎么也是有个上限的,照lz想的那样内存条的钱都省了
------解决方案--------------------
别用超过1MB的数组
改栈用/stack:xxx
应该和你这个方式是等效的,但一般改栈大小都用2的整次方
------解决方案--------------------
栈空间应该是1024KB,超过就会提示异常。。。
------解决方案--------------------
栈有限制,1M
------解决方案--------------------
避免用过大的栈,很容易出问题,性能上也不推荐,建议用堆。
------解决方案--------------------
你没有rebuild工程而已
------解决方案--------------------
------解决方案--------------------
大家好,我在vs2008写了以下测试程序:
- C/C++ code
void main() { char buf1[1000000]; char buf2[1000000]; }
发现编译器提示“ 应用程序发生异常 unknown software exception (0xc00000fd),位置为 0x0042d8e7。”出错。
我已经把“项目属性->链接器->系统->堆栈提交大小”设置为3000000,不知道为什么还会提示栈空间不足呢?请问是什么原因导致设置失效?或者由其它什么原因引起的呢?谢谢大家!
------解决方案--------------------
这是多大啊,字节?
操作系统自身是有限制的,不是你要多少就多少的...
linux下用Ulimit,win下木知。
------解决方案--------------------
怎么也是有个上限的,照lz想的那样内存条的钱都省了
------解决方案--------------------
别用超过1MB的数组
改栈用/stack:xxx
应该和你这个方式是等效的,但一般改栈大小都用2的整次方
------解决方案--------------------
栈空间应该是1024KB,超过就会提示异常。。。
------解决方案--------------------
栈有限制,1M
------解决方案--------------------
避免用过大的栈,很容易出问题,性能上也不推荐,建议用堆。
------解决方案--------------------
你没有rebuild工程而已
------解决方案--------------------
------解决方案--------------------
- C/C++ code
void main() { static char buf1[1000000]; static char buf2[1000000]; }
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------