静态数组放在堆栈,动态数组放在堆-自由存储区
c语言创建动态数组:
int *p = (int *)malloc(n * sizeof(int));
free(p);
c++创建动态数组:
int *pia = new int[n];//内置类型没有初始化
string *psa = new string[10];//默认的构造函数初始化
int *pia2 = new int[10]();//内置类型初始化为默认值
delete[] pia;//new完要delete,[]说明分配的是数组
//char arr[0];静态数组不允许大小为0
char *cp = new char[0];//但动态数组可以大小为0