静态数组:c语言中数组的长度是固定的,也称为静态数组,而这种限制不甚合理。
动态数组:c++中数组有时候不用在编译时就知道长度,直到运行时才知道,这就是动态数组,也就是可以动态分配长度的数组。与静态数组变量区别是,动态分配的数组空间将一直存在,直到程序显式的释放它为止。
定义一个动态数组:
int *p=new int[100];
p就是一个动态数组,其实动态数组就是一个指针,使用new为p分配长度。
也可以通过这种方式初始化: int *p=new int[100]();
上面的语句等同于下面的语句: