malloc函数处理内存时需注意什么,它分配内存大小有限制吗?如果要分配空间很大(如超过1G)怎么处理?
我要计算一个数组很大的程序,要将计算结果都保存;我采用的就是结果有多大就分多少空间,但发现无法分配。数组大小为1320000*5*5*15*8*2byte...
我要计算一个数组很大的程序,要将计算结果都保存;我采用的就是结果有多大就分多少空间,但发现无法分配。数组大小为1320000*5*5*15*8*2 byte
展开
展开全部
1.注意申请格式
type *p = NULL;
if (NULL == (p = (type *)malloc(sizeof (type))))
{
perror("malloc");
exit(1);
}
...
free(p);
p = NULL;
2.申请1G的空间,你开玩笑吧,我反正没这么做过,至于大小我不知道。
type *p = NULL;
if (NULL == (p = (type *)malloc(sizeof (type))))
{
perror("malloc");
exit(1);
}
...
free(p);
p = NULL;
2.申请1G的空间,你开玩笑吧,我反正没这么做过,至于大小我不知道。
追问
我要计算一个数组很大的程序,要将计算结果都保存;我采用的就是结果有多大就分多少空间,但发现无法分配。请问你有什么好的建议吗?我编程比较菜。
追答
可以看下代码吗?
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
分配太大硬盘就要吱吱的响了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
执行分配语句后,判断一下,再执行后面的语句吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
这么大 ,看一下堆栈方面的设置吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询