C++中一个函数可以使用多大的栈
就是
void foo()
{
char * p = new char[count]
}
那么这个count最大为多少呢?? 是640k还是64k?
[解决办法]
这是堆.....
[解决办法]
这是堆,在winXP下试过最大2G
[解决办法]
……
印象中是只有64K
一般的话,如果数组不超过0.1k的话,我会选择用栈
但如果稍大的数组的话,我会选择用堆,
万一用到递归的话,栈是很有可能不够的
[解决办法]
跟编译器相关
默认大概2m的样子
[解决办法]
char * p = new char[count]
------------------------------------------
你的问题应该改为“一个函数可以使用多大的堆”。
[解决办法]
这个看你编译的时候的选项,可以选择栈空间大小
同时,同线程的栈是一起用的,不存在一个函数所能用最大值的概念
那也要看调用此函数之前用掉了多少栈空间