标题:Windows下数组最大可以分配多少呢??
只看楼主
十万
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2009-3-24
结帖率:100%
 问题点数:0 回复次数:4 
Windows下数组最大可以分配多少呢??
昨天用Dev-C++写程序时定义了一个数组long b[500000](long占4个字节),当定义为600000时输出结果就错了,我在网上搜了搜原因,有的说“局部变量的申请空间是存放于栈中,windows里默认栈内存是1M”,有的说是2M,那是不是说定义数组最大不能超过1M或2M呢?那么到底是1M或2M呢?如果按2M,上面的long b[]数组最大可以设置为524287个元素,可我仔细验证了一下,发现数组b最大可以是521132,这是为什么呢?有谁知道帮帮小弟啊。。。感激不尽。。。
搜索更多相关主题的帖子: Windows 
2009-11-13 10:25
十万
Rank: 1
等 级:新手上路
帖 子:25
专家分:0
注 册:2009-3-24
得分:0 
数组大小好像还与编译器有关吧?。。
2009-11-13 10:26
josen0205
Rank: 2
来 自:江苏
等 级:论坛游民
帖 子:307
专家分:52
注 册:2007-5-8
得分:0 
如果需要很大数组,可以动态分配内存,只要你的内存足够大,好像Windows32位操作系统最大可以动态分配2G的内存。

只有想不到,没有做不到
2009-11-13 13:10
lijm1989
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:珠海
等 级:贵宾
威 望:12
帖 子:675
专家分:2844
注 册:2009-10-14
得分:0 
全局变量可以开的空间比局部的大···试试全局的够不够用··不够的话··如LS说··用动态···
2009-11-13 15:53
jinmu
Rank: 2
等 级:论坛游民
帖 子:34
专家分:93
注 册:2009-11-9
得分:0 
用动态吧
2009-11-13 23:44



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-292146-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.115754 second(s), 7 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved