例如.:
myChararray = (char *) malloc(16);
现在,如果我创建一个这样的函数并将myChararray传递给它:
reset(char * myChararrayp){ free(myChararrayp);}
这会工作,还是我会以某种方式只释放指针(myChararrayp)的副本而不是实际的myChararray?
解决方法 这将很好,并释放你所期望的记忆.我考虑写一个像这样的函数
voID reset(char** myPointer) { if (myPointer) { free(*myPointer); *myPointer = NulL; } }
这样在释放后指针被设置为NulL.重用以前释放的指针是常见的错误来源.
总结以上是内存溢出为你收集整理的在c中释放指向动态数组的指针全部内容,希望文章能够帮你解决在c中释放指向动态数组的指针所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)