中易网

C语言:怎么销毁数组呢?

答案:6  悬赏:10  
解决时间 2021-02-11 20:49
C语言:怎么销毁数组呢?
最佳答案
要看数组所使用的内存空间。


  1、如果是局部函数栈空间中的数组,有程序自动回收。
  void f()
  {
  int a[2] = {1,2}; //局部栈空间上的数组,程序自动回收
  }  2、如果是动态内存分配 的数组,在c语言中使用free()将其释放。回收有操作系统的堆管理器来进行操作。
  void f()
  {
  int *p = (int *) malloc(2 * sizeof(int));
  free(p); //释放
  }
全部回答
额,free是用来释放动态数组的吧, 你可以尝试用申请动态数组的方法试试 不是大鸟哈,只是略懂点C而已
恩 其实数组不是很难的 c语言最难的是指针部分 指针就要靠理解 数组只是数字的组合形式 谭浩强的书一定要多看 理解 同时还要上机敲代码 上机真的很重要 如果你只看书 不上机 那你就永远学不好c语言 把书上代码试着改改 想想为什么 重在坚持
可以试试。。 free(imgCanny[0]); free(imgCanny);
malloc() 、calloc() 申请内存块
你定义数组的方法是静态的,这样的变量是不能释放的, 如果是全局变量,只能随程序的结束而释放 如果是局部变量,则随着定义这个数组的那个函数的结束而自动释放。 如果想动态定义使用、释放内存,则通过指针方式来实现: int *pImgCanny=NULL ; int (*p2)[1000] ; //定义一个数组指针,可象使用二维数组一个来操作指针 pImgCanny=malloc( 1000*1000*sizeof(int) ) ; p2=(int **)pImgCanny ; p2[0][0]=100; p2[0][1]=200 ; 用完后,释放: free(pImgCanny);
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
本人19,中性皮肤,有时感觉有点敏感,可以用
石头剪子布少儿服装店这个地址在什么地方,我
访问局域网里的一台共享电脑,需要输入用户名
z21次列车软卧5车厢13下跟16号上是一个屋子么
如何助人为乐
大清铜币户部“鄂”当制钱十文宣统年造值多少
心相随什么意思?
习艺楼B怎么去啊,有知道地址的么
广州番禺哪里招养鱼工
广州客村有什么好吃的?请介绍一下
我是农历1984年12月13日出生的,想问下到2011
洪成水暖五金批发部地址在哪,我要去那里办事
The hippo is bigger than the horse.变成一
拍照时,经常在相机的取景框里看见曝光补偿提
从莲花站到柳州实验高中怎么坐车
推荐资讯
谁看过《毕业生》?好看吗?
身体怎么会散发奶香味
吊消炎的针能不能喝酒?
人民电动工具行怎么去啊,有知道地址的么
柴弄口大桥地址在哪,我要去那里办事
艾薇儿为什么喜欢中国
想要调节呼吸练什么瑜伽好,俄是初学者,可以
额尔古纳莫尔道嘎祥瑞家园地址在什么地方,想
韩胖子千味鸭地址在什么地方,想过去办事
大秦五金机电商行地址有知道的么?有点事想过
求中国地质大学(武汉的)考研群
微信被投诉没法加好友 来个高手能解决的
手机登qq时,显示手机磁盘不足,清理后重新登
刺客的套装怎么选啊?