C++求助:关于动态分配数组的一个问题

来源:百度知道 编辑:UC知道 时间:2024/05/23 04:54:38
我在看一本C++的书,上面写道:

“可以用new动态地建立数组。下面语句动态地分配了一个有100个整数元素的一维数组,并把new运算符返回的指针赋给了整型指针arrayPtr:
int * arrayPtr;
arrayPtr = new int [100];”

我不明白的是,为什么要用动态创建数组呢?这样有什么好处呢?假如我就用一般方法创建一个数组,如int a[100],两个的效果有不同吗?

先谢谢各位高手的指点了!

便于内存管理。

首先考虑局部变量,它在出了函数或者作用域之后就没了,不能带到作用域外面
全局变量和静态变量,尽管声明周期很长,伴随整个进程周期,但是一直占用内存空间

动态的就是介于二者之间,可以延长内存的使用期限,又可以在不用的时候,释放掉内存,避免长时间占用内存

假设有这样一道题目:

将大于整数M且紧靠M的K个素数存入一个一维数组中。
要求从键盘上输入M和K。

现在你怎么会知道这个数组到底申请多大呢?

衣服是可以到专卖店按型号购买也可以到服装店量身定做是吧
内存当然也是一样的

动态内存分配 ,从名字上就能看的出来, 动态的,权利在程序员手里,更灵活.和量身做衣服是一样的.