有一个c语言的问题,一个数组能不能释放 用free

一个数组能不能释放,用free,不是指针,若能的话,请举个例子请高手指点... 一个数组能不能释放,用free,不是指针,若能的话,请举个例子
请高手指点
展开
 我来答
关韶侍荏
2019-04-22 · TA获得超过3796个赞
知道大有可为答主
回答量:3064
采纳率:31%
帮助的人:406万
展开全部
#include
#include
int
main()
{
char
a[5];
gets(a);
//你这个代码是我的电脑上运行是错误的
free(a+2);//a+5不属于a的,a的范围是a[0]到a[4],而且这个free是对于指针的,你对这种是没有用的,a+2是常量,a也是常量,是地址常量.不能用free的
printf("%s",a);
//system("pause");
getchar();
return
0;
}
neu_sk
2007-08-05 · 超过31用户采纳过TA的回答
知道答主
回答量:112
采纳率:0%
帮助的人:0
展开全部
数组是在程序编译时就已经分配好的,只有在程序结束时才由系统释放,不用程序释放,而动态分配的空间,比如malloc 就要由程序在使用完释放(free)
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
吉亨
2007-08-05 · TA获得超过4056个赞
知道小有建树答主
回答量:784
采纳率:0%
帮助的人:815万
展开全部
通常数组是不能使用free()函数释放的。free()函数主要用在指针上面。对指针变量或函数进行free()操作,可以释放内存空间。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友93058df47
2007-08-04
知道答主
回答量:2
采纳率:0%
帮助的人:0
展开全部
不是指针的话,那就上栈上的数组啦,栈上的是不能free的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友06fd97b
2007-08-04 · TA获得超过221个赞
知道小有建树答主
回答量:681
采纳率:0%
帮助的人:240万
展开全部
数组哪能动态申请????????数组申请的内存空间系统灰自动回收的,不用你操心
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式