char ss[3000];
function(ss);
其中function 是一个第三方函数,作用是填充ss,得到我需要的char数组,
请问我用完之后用不用释放ss??如何释放?

解决方案 »

  1.   

    不用释放,char ss[3000];
    这种定义方式,是在栈空间上分配的空间,当你的这个数组的生命期结束的时候这个栈空间会自己释放掉,所以不用人工释放资源!只有用new在堆空间上分配的内存才需要程序员手工释放!
      

  2.   

    不用释放,char ss[3000];
    这种定义方式,是在栈空间上分配的空间,当你的这个数组的生命期结束的时候这个栈空间会自己释放掉,所以不用人工释放资源!只有用new在堆空间上分配的内存才需要程序员手工释放!
      

  3.   

    虽然有蹭分的嫌疑。还是来一句吧:不用!栈的空间是系统管理的。
    不过我建议你这种大家伙还是用new方法分配在堆中比较好,栈的默认空间只有1M噢!用多了可是会溢出的噢!!!
      

  4.   

    不用,看看下面的帖子对理解栈和堆的区别很有帮助哦
    http://expert.csdn.net/Expert/topic/2432/2432433.xml?temp=.7533838
      

  5.   

    数组类型的变量,系统会主动收回,可有一点需要注意,如果你把ss设置为全局的,那ss就会在整个程序的运行期存在,这样是否会浪费资源,那要取决于你对ss的使用情况。