1:用new动态分配内存给一维数组
#include<iostream>
int main()
{
int *p = new int[10]; }//这里是动态分配10个int的内存,并把首元素的地址返回。 记住在动态分配的时候,不需要写int *p[10]来表达这是指向10个int的数组,因为new返回的是第一个值的地址,而第一个值是int,所以应该用int*.
2: 用new动态分配内存给二维数组。
对于二维数组,其每个元素都是一个一位数组。所以假定每个一位数组都拥有10个int.
#inlcude<iostream>
int main()
{
int (*p)[10] = new int[4][10];
}
表达式左边的指针定义永远都是指向分配的数组的其中元素的类型的指针类型。