int** p = (int**)malloc(sizeof(int*) * 3);//一维 int* 为类型 *p 为指针
for (int i = 0; i < 4; i++)
{
p[i] = (int*)malloc(sizeof(int) * 4);
//p[i] = new int[4]();
}
for (int i = 0; i < 3; i++)
{
free(p[i]);//先释放第二维
}
free(p);
int** p = new int* [3];
for (int i = 0; i < 4; i++)
{
p[i] = new int[4]();
}
for (int i = 0; i < 3; i++)
{
delete []p[i]; //delete 释放数组 后面就加[]
}
delete[]p;
总结
-
(类型) malloc (开辟字节数)
free(变量) -
new 类型 [开辟空间大小]
delete 释放数组 后面就加[ ] -
释放二维数组先释放第二维