gpt4 book ai didi

c++ - strcpy之后的delete[]会不会导致内存泄露?

转载 作者:搜寻专家 更新时间:2023-10-30 23:59:23 27 4
gpt4 key购买 nike

char* myChar=new char[20];
char* myChar2="123";
strcpy(myChar, myChar2);

...

delete[] myChar;

我的问题是,如果 strcpy"123" 的末尾放置一个 '\0',那么 将删除 [ ] myChar 只删除前 3 个字符而未能删除其余的 myChar?

谢谢...

最佳答案

不,delete [] 释放所有由 new [] 分配的内存,只要您将相同的地址传递给 delete []new [] 返回。
它只是正确地记住分配了多少内存,而不管该内存中放置了什么。

关于c++ - strcpy之后的delete[]会不会导致内存泄露?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16621182/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com