读书人

静态储存区 最大限制为多大

发布时间: 2012-10-10 13:58:11 作者: rapoo

静态存储区 最大限制为多大?
堆 最大是4G。
栈 默认是1M可以通过设置增加。
问题一:那么 静态存储区最大为多大?
问题二:编译时,设置生成的代码是32位机器和64位机器,是否有不一样 限制?


[解决办法]
堆最大也没有4G,因为整个进程的映像空间有一部分被映射给操作系统,另外栈也占据了一部分,全局,静态变量再占据一部分,还有其他代码数据占据一部分.

问题一:
静态存储区理论上有4G,但除掉刚才说的那些,一个静态存储区也不可能占据整个存储空间.
简单例子,可以测试一下:

C/C++ code
char s_zone[0xFFFFFFFF + 1];int main(void){    return 0;}
[解决办法]
静态数据区没有限制的。
另外找出错原因去

读书人网 >C++

热点推荐