请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

第四章第4题内存泄漏的原因

老师好,第四章第4题内存泄漏的原因是在test函数中没有对字符串指针做释放工作对吗?

正在回答 回答被采纳积分+3

1回答

quickzhao 2021-05-05 12:42:46

你好,请提问时给出详细的原题,谢谢!

0 回复 有任何疑惑可以回复我~
  • 提问者 精慕门0548516 #1
    4. ```
       void GetMemory2(char **p, int num)
       {
       	*p = new char[num];
       }
       void Test(void)
       {
       	char *str = NULL;
       	GetMemory2(&str, 100);
       	strcpy(str, "hello");
       	printf(str);
       }
       ```
       请问运行Test 函数会有什么样的结果?
        **答:能够输出hello,但内存泄漏 **
    回复 有任何疑惑可以回复我~ 2021-05-10 22:08:28
  • quickzhao 回复 提问者 精慕门0548516 #2
    是的,这里new了一个快空间,并通过二级指针传递出去。但是没有delete,会导致内存泄露。
    回复 有任何疑惑可以回复我~ 2021-05-11 14:55:10
问题已解决,确定采纳
还有疑问,暂不采纳
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号