网站前台的实现/关键词广告
int * p = new int[3]和int p[3]功能是一样的
但有一些区别:
1: int *p = new int[3]是在堆上分配空间的,一定要自己释放,使用delete[ ] p释放内存空间;
而int p[3]是在栈上分配的,退出作用域后自动释放
2: int * p = new int[3] 中的p是一个指向int的指针,它还可以指向其它地方
但int p[3]中的p是常量指针,不能再给它赋值了
int * p = new int[3]和int p[3]功能是一样的
但有一些区别:
1: int *p = new int[3]是在堆上分配空间的,一定要自己释放,使用delete[ ] p释放内存空间;
而int p[3]是在栈上分配的,退出作用域后自动释放
2: int * p = new int[3] 中的p是一个指向int的指针,它还可以指向其它地方
但int p[3]中的p是常量指针,不能再给它赋值了