C++动态数组应用方式探讨

C++是一款功能强大,应用范围广泛的计算机编程语言,从产生至今已经历经20年时间,在开发领域中仍然占据着举足轻重的地位。我们今天在这里将会为大家介绍其中一个比较重要的知识点,就是有关C++动态数组的应用方式的介绍。

C++动态数组相关操作代码如下:

 
 
 
  1. #include< iostream>   
  2. #include< conio.h>   
  3. #include< cstdlib> 
    //此头文件包含函数exit(),由于C++可识别exit(),实际上该头文件可省略   
  4. using namespace std;   
  5. void display(double ***);   
  6. void de_lete(double ***);   
  7. int x,y,z; //全局变量   
  8. void main()   
  9. {   
  10. cout< < "请分别输入三维数组data[x][y][z]中X,Y,Z的值:"< < endl;   
  11. while(cin>>x>>y>>z&&(x< 0||y< 0||z< 0))   
  12. cout< < "输入不合法,请重新输入!"< < endl;   
  13. double ***data;   
  14. data=new double **[x];//建立代表组成三维数组的各二维数组名的二级指针数组   
  15. if(data==0){   
  16. cout< < "内存分配失败!程序终止。"< < endl;   
  17. exit(1);   
  18. }   
  19. for(int j=0;j< x;++j)   
  20. data[j]=new double *[y];//建立代表组成二维数组的各一维数组名的指针数组   
  21. if(data[0]==0){   
  22. cout< < "内存分配失败!程序终止。"< < endl;   
  23. exit(1);   
  24. }   
  25. for(int j=0;j< x;++j)   
  26. for(int k=0;k< y;++k)   
  27. data[j][k]=new double[z];//建立所有一维数组   
  28. if(data[0][0]==0){   
  29. cout< < "内存分配失败!程序终止。"< < endl;   
  30. exit(1);   
  31. }   
  32. for(int i=0;i< x;++i)   
  33. for(int j=0;j< y;++j)   
  34. for(int k=0;k< z;++k)   
  35. data[j][k]=i*y*z+j*z+k;   
  36. display(data);   
  37. de_lete(data);   
  38. getch();   
 
 
 
  1. void display(double ***data)//显示各元素   
  2. {   
  3. cout< < "满足要求的数组如下:"< < endl;   
  4. for(int i=0;i< x;++i){   
  5. for(int j=0;j< y;++j){   
  6. for(int k=0;k< z;++k)   
  7. cout< < data[j][k]< < "\t";   
  8. cout< < endl;   
  9. }   
  10. cout< < endl;   
  11. }   
 
 
 
  1. void de_lete(double ***data)//释放动态分配的内存空间   
  2. {   
  3. for(int i=0;i< x;++i)   
  4. for(int j=0;j< y;++j)   
  5. delete [] data[j];   
  6. for(int i=0;i< x;++i)   
  7. delete [] data;   
  8. delete [] data;   

以上就是我们对C++动态数组相关操作方法的介绍。

【编辑推荐】

  1. C++ enum枚举代码示例剖析
  2. C++文件流操作具体实现方法探讨
  3. C++指针与引用之间有何不同之处
  4. C++单例模式多种实现技巧介绍
  5. C++字符串替换函数具体实现方法详解

网页名称:C++动态数组应用方式探讨
文章源于:http://www.shufengxianlan.com/qtweb/news24/363574.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联