扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
这篇文章将为大家详细讲解有关C++中如何使用动态数组,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
成都服务器托管,成都创新互联公司提供包括服务器租用、绵阳主机托管、带宽租用、云主机、机柜租用、主机租用托管、CDN网站加速、域名申请等业务的一体化完整服务。电话咨询:18980820575
C++动态数组相关操作代码如下:
#include< iostream>
#include< conio.h>
#include< cstdlib>
//此头文件包含函数exit(),由于C++可识别exit(),实际上该头文件可省略using namespace std;
void display(double ***);
void de_lete(double ***);
int x,y,z; //全局变量
void main()
{
cout< < "请分别输入三维数组data[x][y][z]中X,Y,Z的值:"< < endl;
while(cin>>x>>y>>z&&(x< 0||y< 0||z< 0))
cout< < "输入不合法,请重新输入!"< < endl;
double ***data;
data=new double **[x];//建立代表组成三维数组的各二维数组名的二级指针数组
if(data==0){
cout< < "内存分配失败!程序终止。"< < endl;
exit(1);
}
for(int j=0;j< x;++j)
data[j]=new double *[y];//建立代表组成二维数组的各一维数组名的指针数组
if(data[0]==0){
cout< < "内存分配失败!程序终止。"< < endl;
exit(1);
}
for(int j=0;j< x;++j)
for(int k=0;k< y;++k)
data[j][k]=new double[z];//建立所有一维数组
if(data[0][0]==0){
cout< < "内存分配失败!程序终止。"< < endl;
exit(1);
}
for(int i=0;i< x;++i)
for(int j=0;j< y;++j)
for(int k=0;k< z;++k)
data[j][k]=i*y*z+j*z+k;
display(data);
de_lete(data);
getch();
}
void display(double ***data)//显示各元素 { cout< < "满足要求的数组如下:"< < endl; for(int i=0;i< x;++i){ for(int j=0;j< y;++j){ for(int k=0;k< z;++k) cout< < data[j][k]< < "\t"; cout< < endl; } cout< < endl; } }
void de_lete(double ***data)//释放动态分配的内存空间 { for(int i=0;i< x;++i) for(int j=0;j< y;++j) delete [] data[j]; for(int i=0;i< x;++i) delete [] data; delete [] data; }
关于C++中如何使用动态数组就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流