关于二维数组动态申请
来源:互联网 发布:买网络电视要注意什么 编辑:程序博客网 时间:2024/06/07 10:29
C++中有三种方法来动态申请多维数组
(1)C中的malloc/free
(2)C++中的new/delete
(3)STL容器中的vector
1.c语言
1.一维
int *p; printf("请输入开辟的数组长度:"); scanf("%d",&m); p = (int*)malloc(sizeof(int)*m);//动态开辟 printf("请输入数据:"); for(i = 0; i < m ; i++) scanf("%d",&p[i]); printf("输出数据:\n"); for(i = 0; i < m; i++) printf("%d ",p[i]); free(p);
2.二维
//动态开辟二维数组 void dynamicCreate2Array() { int m,n; int i,j; int **p; printf("请输入数组行和列:"); scanf("%d%d",&m,&n); p = (int**)malloc(sizeof(int*)*m); //开辟行 for(i = 0; i < m; i++) { *(p+i) = (int*)malloc(sizeof(int)*n);//开辟列 } //输入数据 printf("请输入数:"); for(i = 0 ; i < m;i++) for(j = 0; j < n;j++) scanf("%d",&p[i][j]); //输出数据 for(i = 0 ; i < m;i++) { for(j = 0; j < n;j++) { printf("%3d ",p[i][j]); } printf("\n"); } //释放开辟的二维空间 for(i = 0; i < m;i++) free(*(p+i)); }
2.new 数组
1.一维
int *p = new int[len]; cout<<"请输入数据:"; for(int i = 0; i < len; i++) cin>>p[i]; cout<<"输出数据:"<<endl; for(i = 0; i < len; i++) cout<<setw(4)<<p[i]; delete[] p;
2..动态开辟二维数组
#include <iostream>#include<vector>using namespace std;vector<int> s;int main(){ //申请 int **a; a=new int *[10];//一级指针数组 for(int i=0;i<10;i++) a[i]=new int [10];//数据 //存入 for(int i=0;i<10;i++) for(int j=0;j<10;j++) a[i][j]=i+j; //输出 for(int i=0;i<10;i++) { for(int j=0;j<10;j++) cout<<a[i][j]<<" "; cout<<endl; } //释放 for(int i=0;i<10;i++) delete []a[i]; delete []a; cout << "Hello world!" << endl; return 0;}
3.vector
545
//注意下面这一行:vector <int后两个 "> "之间要有空格!否则会被认为是重载 "> > "。 vector<vector<int> > p(m,vector<int>(n)); cout<<"请输入数据:"; for(int i = 0 ; i < m ; i++) for(int j = 0; j < n; j++) cin>>p[i][j]; cout<<"输出数据:"<<endl; for(i = 0; i < m; i++) { for(int j = 0; j < n; j++) cout<<setw(3)<<p[i][j]; cout<<endl; }
来源点击打开链接
0 0
- 关于二维数组动态申请
- 动态申请二维数组。
- 动态申请二维数组
- 动态申请二维数组
- 动态申请二维数组
- 动态申请二维数组
- 动态申请二维数组
- 动态申请二维数组
- 申请动态二维数组
- 动态申请二维数组
- 动态申请二维数组
- 动态申请二维数组
- 动态申请二维数组
- 动态申请二维数组
- 动态申请二维数组方法
- C++申请动态二维数组
- C++动态申请二维数组
- malloc动态申请二维数组
- Struts2学习笔记之运行机制
- 【git】error: server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfi
- 什么是VB进行子类化及简单介绍
- Android之ArrayAdapter详解
- HDU 2544 最短路 模板题 SPFA Dijkstra
- 关于二维数组动态申请
- ios开发之NSData
- 给定一个有环链表,实现一个算法返回环路的开头结点
- 知乎大神YaqiLYU关于tracking方向的2013-2016趋势总览!!!强烈推荐!!!
- 4.17学习流水账——GTSRB函数TrainTrafficSigns
- 【Fltk】Fltk1.3.3+VS2015 编程
- 机器学习笔记(1)-线性回归
- c++自动比较数字大小函数
- 基于django的轻量级CMS Mezzanine搭建笔记