首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C语言 >

释放到底是什么意思啊解决思路

2012-02-10 
释放到底是什么意思啊???statusdeletelist(linklist&l,intI,elemtype&e){lnode*p,*qplj0while(p- ne

释放到底是什么意思啊???
status   deletelist(linklist   &l,   int   I,elemtype   &e)
      {         lnode   *   p,   *q;
          p=l;j=0;
        while   (p-> next   &&   j <I-1)   {p=p-> next   ;++j;}
            if(!(p-> next   )||j> I-1)   return   ERROR;
            q=p–> next;                   p–> next=q–> next;
            e=q-> data;         free(q);              
          return   OK;     }

就是上面这样的一段代码,有个   free(q);               这个
是说这个指针没了,还是指向的存储内容没有了啊?
能不能具体解释一下!!!!!!!!!!!!1
谢了!~

[解决办法]
有个 free(q); 这个
是说这个指针没了,还是指向的存储内容没有了啊?

q 还是存在的,内存也不会“没”了。
free(q);其意思是告诉系统,
q指向的空间我(当前进程)不用了,你(系统)可以收回(供其他程序使用)了。

这样够明白了吧?

热点排行