自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

C++動(dòng)態(tài)數(shù)組應(yīng)用方式探討

開(kāi)發(fā) 后端
C++動(dòng)態(tài)數(shù)組在實(shí)際編程中應(yīng)用比較頻繁,而且能夠幫助我們輕松的實(shí)現(xiàn)許多功能。在這里我們竟會(huì)根據(jù)一段代碼示例來(lái)詳細(xì)解讀其應(yīng)用方式。

C++是一款功能強(qiáng)大,應(yīng)用范圍廣泛的計(jì)算機(jī)編程語(yǔ)言,從產(chǎn)生至今已經(jīng)歷經(jīng)20年時(shí)間,在開(kāi)發(fā)領(lǐng)域中仍然占據(jù)著舉足輕重的地位。我們今天在這里將會(huì)為大家介紹其中一個(gè)比較重要的知識(shí)點(diǎn),就是有關(guān)C++動(dòng)態(tài)數(shù)組的應(yīng)用方式的介紹。

C++動(dòng)態(tài)數(shù)組相關(guān)操作代碼如下:

  1. #include< iostream>   
  2. #include< conio.h>   
  3. #include< cstdlib> 
    //此頭文件包含函數(shù)exit(),由于C++可識(shí)別exit(),實(shí)際上該頭文件可省略   
  4. using namespace std;   
  5. void display(double ***);   
  6. void de_lete(double ***);   
  7. int x,y,z; //全局變量   
  8. void main()   
  9. {   
  10. cout< < "請(qǐng)分別輸入三維數(shù)組data[x][y][z]中X,Y,Z的值:"< < endl;   
  11. while(cin>>x>>y>>z&&(x< 0||y< 0||z< 0))   
  12. cout< < "輸入不合法,請(qǐng)重新輸入!"< < endl;   
  13. double ***data;   
  14. data=new double **[x];//建立代表組成三維數(shù)組的各二維數(shù)組名的二級(jí)指針數(shù)組   
  15. if(data==0){   
  16. cout< < "內(nèi)存分配失??!程序終止。"< < endl;   
  17. exit(1);   
  18. }   
  19. for(int j=0;j< x;++j)   
  20. data[j]=new double *[y];//建立代表組成二維數(shù)組的各一維數(shù)組名的指針數(shù)組   
  21. if(data[0]==0){   
  22. cout< < "內(nèi)存分配失??!程序終止。"< < 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];//建立所有一維數(shù)組   
  28. if(data[0][0]==0){   
  29. cout< < "內(nèi)存分配失敗!程序終止。"< < 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< < "滿足要求的數(shù)組如下:"< < 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)//釋放動(dòng)態(tài)分配的內(nèi)存空間   
  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;   

以上就是我們對(duì)C++動(dòng)態(tài)數(shù)組相關(guān)操作方法的介紹。

【編輯推薦】

  1. C++ enum枚舉代碼示例剖析
  2. C++文件流操作具體實(shí)現(xiàn)方法探討
  3. C++指針與引用之間有何不同之處
  4. C++單例模式多種實(shí)現(xiàn)技巧介紹
  5. C++字符串替換函數(shù)具體實(shí)現(xiàn)方法詳解
責(zé)任編輯:曹凱 來(lái)源: 博客園
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)