请问char数组最大能多少?是否无法超过1024?

asfawefawf 2005-12-09 08:37:45
我指定char test[300*1024]的时候没有任何问题,而char test[1024*1024]就会出错,是否char[]无法超过1024*1024?
因为我需要在程序运行中,读取一个文件到内存,而文件大小不固定,大多数时候超不过300k,但是考虑到万一超过300k的情况,所以希望设置大一点。
...全文
2690 34 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
34 条回复
切换为时间正序
请发表友善的回复…
发表回复
luvybird 2005-12-13
  • 打赏
  • 举报
回复
mark
asfawefawf 2005-12-11
  • 打赏
  • 举报
回复
谢谢各位!最后还是找办法malloc分配到堆了,栈还是要小心使用的好噢,:)
Flood1984 2005-12-10
  • 打赏
  • 举报
回复
char test[1024*1024];
//定义这么大的变量你都不考虑一下空间?
这鸟光一个数组就要占1M的内存。
lsvine 2005-12-10
  • 打赏
  • 举报
回复
怎么不给个栈的修改方法

这不就是吗?
如果确有需要,在VC中是可以调整栈内存的大小,选项是/statck.

详细点:project->setting->link->gategory:output->stack allocation

google一下也能找到....
ypine 2005-12-10
  • 打赏
  • 举报
回复
这么大动态分配比较好
shicheng521 2005-12-10
  • 打赏
  • 举报
回复
栈、堆……
bombwang 2005-12-10
  • 打赏
  • 举报
回复
mark
zw24127 2005-12-09
  • 打赏
  • 举报
回复
剩余空间不够了吧
alen_ghl 2005-12-09
  • 打赏
  • 举报
回复
修改编译器默认栈大小,把它改大点
speeches 2005-12-09
  • 打赏
  • 举报
回复
学习!如果是需要 超过实际内存空间的大小,那还是申请硬盘空间好了.
最好自己做个虚拟内存,页交换,表交换什么的...这样子过不了多少时间,可以搞个os来了...
发达了...
qimans 2005-12-09
  • 打赏
  • 举报
回复
实用共享内存文件影射方式,UNIX上可以处理几十个G的数据,在PC机上没试过
另外,建议修改程序结构,不要因为程序的原因影响应用功能。
sankt 2005-12-09
  • 打赏
  • 举报
回复
需要更大的内存空间,可以使用动态内存分配,最大不超过2G
可以用new 或 malloc

cky41 2005-12-09
  • 打赏
  • 举报
回复
学习
Zark 2005-12-09
  • 打赏
  • 举报
回复
在VC中栈的缺省值为1M,所以当你分配1024*1024个char后,栈就溢出了。读取文件时,一般来说不会全部读入,只读要用的部份,如果必须全部读入,大多数使用堆上内存。

如果确有需要,在VC中是可以调整栈内存的大小,选项是/statck.
RainWindy 2005-12-09
  • 打赏
  • 举报
回复
显然这种情况是栈空间不足,也可以延伸到内存不足。
针对你的情况,已经可以控制300*1024大小空间了,如果文件超过这个大小,可以先读取一部分文件内容,并对这块内容做处理,处理好后再读取下一块文件内容。这种方式会比较麻烦,但由于文件的不确定性,不管你的内存有多大,都有可能会内存不足的,所以你最终还是要考虑使用这种方式,相当于是缓冲方式。
csucdl 2005-12-09
  • 打赏
  • 举报
回复
怎么不给个栈的修改方法
cssin 2005-12-09
  • 打赏
  • 举报
回复
是否可以考虑循环读文件呢,每次读一部分,处理一部分,然后再把内存中的数据和硬盘上的数据交换?
sdzg_wq 2005-12-09
  • 打赏
  • 举报
回复
关注
jiazichenzhan 2005-12-09
  • 打赏
  • 举报
回复
学习……
aspnetwuxueyou 2005-12-09
  • 打赏
  • 举报
回复 1
你在栈上申请空间,肯定不行了。比如说wince中栈只有64k,在symbian中就更小了。
你可以把你的变量声明为全局的,这样内存是在数据段中,不会影响栈
加载更多回复(14)

70,026

社区成员

发帖
与我相关
我的任务
社区描述
C语言相关问题讨论
社区管理员
  • C语言
  • 花神庙码农
  • 架构师李肯
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧