首页 > 代码库 > 使用new创建动态数组

使用new创建动态数组

使用new创建动态数组

例如:

1 int *psome=new int[10];

要将数组的类型和元素的数目告诉new即可。

new运算符返回第一个元素的地址。

当程序使用完new分配的内存块时,要使用delete释放。

1 delete[]psome;

方括号的意思就是释放整个数组。

总之,使用new和delete时,应遵守:

1、不要使用delete释放不是new分配的内存;

2、不要使用delete释放同一个内存块两次;

3、如果使用new[]为数组分配内存,就要使用[]释放;

4、如果使用new为一个实体分配内存,就要使用delete释放;

5、对空指针使用delete是安全的。

 

使用动态数组

*psome就是第一个元素的值。

可以使用数组名的方法,即psome[0]就是第一个元素,psome[1]就是第二个元素。

例:

 1 #include<iostream> 2 int main() 3 { 4     using namespace std; 5     double *p3=new double[3]; 6     p3[0]=0.2; 7     p3[1]=0.5; 8     p3[2]=0.8; 9     cout<<"p3[1] is "<<p3[1]<<endl;10     p3=p3+1;//指针向后移一位11     cout<<"now,p3[0] is "<<p3[0]<<" and p3[1] is "<<p3[1]<<endl;12     p3=p3-1;//还原13     delete[]p3;14     return 0;15 }

 

使用new创建动态数组