C++中二维数组总结
来源:互联网 发布:javascript 光标 编辑:程序博客网 时间:2024/06/16 18:15
最近编程需要研究了一下二维数组,网上这方面的资料蛮多了,汇总一下,欢迎补充!
关于二维数据的基本知识见这里:
C++二维数组讲解、二维数组的声明和初始化
关于二维数据的动态分配,以下博客讲述得比较清楚:
1、C++中二维数组new小结
2、二维数组的动态分配(new)、初始化(memset)和撤销(delete)
3、动态分配内存。。。
4、如何在C/C++中动态分配二维数组
举例:
//动态定义一维数组、二维数组、三维数组#include<iostream>#include<ctime>using namespace std ;int main(){int hight , row , col ;register int i , j , k ;srand((unsigned)time(NULL)) ;cout<<"输入一维数组的行"<<endl;cin>>row ;//动态定义一维数组int *p1 ; p1 = new int [row] ;//输入一维数组的值for( i = 0 ; i < row ; i ++ ) p1[i] = rand () % 10 ;//输出一维数组for( i = 0 ; i < row ; i ++ ) cout<<p1[i] <<' ' ;cout<<endl;//释放一维数组delete [] p1 ;cout<<"输入二维数组的行,列 :";cin>>row >>col ;//动态定义二维数组int **p2 ;p2 = new int*[row] ;for( i = 0 ; i < row ; i ++ ) p2[i] = new int[col] ;//输入二维数组的值for( i = 0 ; i < row ; i ++ ) for( j = 0 ; j < col ; j ++ ) p2[i][j] = rand() % 10 ;//输出二维数组 cout<<"输出二位数组:"<<endl;for( i = 0 ; i < row ; i ++ ){ for( j = 0 ;j < col ; j ++ ) cout<<p2[i][j]<<' ' ; cout<<endl;} //释放二维数组for( i = 0 ; i < row ; i ++ ) delete []p2[i] ;delete []p2 ;cout<<"输入三维数组高,行,列 : ";cin>>hight>>row >> col ;//动态定义三维数组:int *** p3 ;p3 = new int**[hight ] ;for( i = 0 ; i < hight ; i ++ ) p3[i] = new int*[row] ; for( i = 0 ; i < hight ; i ++ ) for( j = 0 ; j < row ; j ++ ) p3[i][j] = new int[col] ; //输入三维数组值: for(i = 0 ; i < hight ; i ++ ) for(j = 0 ; j < row ; j ++ ) for( k = 0 ; k < col ; k ++) p3[i][j][k] = rand()%10 ; //输出三维数组: cout<<"输出三维数组"<<endl; for(i = 0 ; i < hight ; i ++ ) { for( j = 0 ; j < row ; j ++ ) { for( k = 0 ; k < col ; k ++ ) cout<<p3[i][j][k]<<' ' ; cout<<endl; } cout<<endl; } //释放三维数组 for( i = 0 ; i < hight ; i ++ ) for( j = 0 ; j < row ; j ++ ) delete []p3[i][j] ; for( i = 0 ; i < hight ; i ++ ) delete []p3[i] ; delete []p3 ; return 0 ;}
结果如下:
0 0
- C++中二维数组总结
- C中关于一位数组与指针和二维数组与指针的一点总结
- C 语言 关于二维数组 传参 总结
- VC中二维字符串数组使用总结()
- 二维数组中有关指针总结
- C++中动态分配二维数组
- C中动态二维数组的获取
- C语言中二维数组传递参数
- C/C++ 中二维数组的传递
- c语言中二维数组的问题
- C语言中动态二维数组定义
- C 语言中二维数组指针详解
- C语言中动态分配二维数组
- c语言中二维数组的问题
- C语言中二维数组动态分配内存
- c语言中二维数组的传递
- C中动态二维数组的生成
- c中动态与静态二维数组
- Spring使用IOC注解
- 数组和字符串(面向对象篇)
- 【Cocos Creator 实战教程(0)】——写在前面
- spring aop中的propagation的7种配置的意思
- CSU-1409 集合的并(水~结构体排序)
- C++中二维数组总结
- Android中利用观察者模式对UrlConnection进行封装
- Java多线程学习
- flume
- Swift NSNotificationCenter的使用
- 数组排序-包含json数据格式的数组
- 线程
- 庖丁解牛之仿《闪传》实现文件传输(下)
- 绝对路径与相对路径