c语言字符数组如何释放消毁?
c语言字符数组定义后如何才能释放其占用的内存,如:charstr[]="Helloworld!";我知道可以使用:free(str);但执行之后没有任何变化;又不支持:s...
c语言字符数组定义后如何才能释放其占用的内存,
如:char str[] = "Hello world!";
我知道可以使用:free(str);
但执行之后没有任何变化;
又不支持:str = NULL; 语句;
如何才能释放消毁呢?
如果在之后还想用这个变量名称,如何才能重新定义呢?
我想问的是字符数组变量,不是字符指针变量,3Q! 展开
如:char str[] = "Hello world!";
我知道可以使用:free(str);
但执行之后没有任何变化;
又不支持:str = NULL; 语句;
如何才能释放消毁呢?
如果在之后还想用这个变量名称,如何才能重新定义呢?
我想问的是字符数组变量,不是字符指针变量,3Q! 展开
4个回答
展开全部
只有用malloc开辟的空间才可以被释放,申请的数组是被放在了堆栈空间内,是不能不被释放掉的,程序结束后自动被系统收回!
c编程高手团队正在招新,有意者速速行动,一起学习,一起努力!!
c编程高手团队正在招新,有意者速速行动,一起学习,一起努力!!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
用malloc申请了的再用free释放!可以做个测试看释放是否成功!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询