通过调用函数给指针分配内存的问题
如代码所示为何用在GetMemory()中分配了内存,回到主函数又变成了空指针?
指针 内存分配 C++
void GetMemory(char* ptr, int size)
{
ptr = new char[size];
}
int main()
{
char* ptr = NULL;
GetMemory(ptr, 100);
// 此时ptr仍为NULL 是为什么?
...
//
delete[] ptr;
}
void GetMemory(char** ptr, int size)
{
*ptr = new char[size];
}