发布网友 发布时间:2024-10-23 15:27
共2个回答
热心网友 时间:2024-10-30 14:19
“外部和静态数组可以赋初值”,是相对于“动态创建的数组”而言的,所谓动态创建就是用操作符new\delete申请和释放的内存。
外部和静态数组可以赋初值是因为他们的内存是在【编译的】时候就开辟了的,所以可以你写代码的时候可以赋初值,编译通过了就行。
“动态创建的数组”的内存是在程序【运行时】才分配的,程序运行的时候你能写代码吗?所以当然不能赋初值!
看程序:
#include <iostream.h>
void main()
{
//动态申请内存的数组,在程序运行的时候才有内存!
int *array =new int[5]; //相当于数组array[5],但是是动态的
for (int i=0; i<5; i++)
{
array[i] = i;
}
for (i=0; i<5; i++)
{
cout<<array[i]<<" ";
}
delete[] array; //释放动态申请的内存
}
热心网友 时间:2024-10-30 14:19
why not