c++ 备忘录:指针

void GetMemory(char *p, int num)
{
     p = new char[100];
}
void Test()
{
    char *str=NULL;
    GetMemory(str,100);
    str = "hellow Error";

这样会报错:原因是内存泄漏,在GetMemory()中动态申请的内存放在堆中,堆中的内存需要delete释放

char* GetMemoryint num)
{
     char *p = new char[100];
     return p;
}
void Test()
{
    char *str=NULL;
    str = GetMemory(100);
    str = "hellow Error";

你可能感兴趣的:(c++从入门到放弃,c语言,内存泄露,指针)