动态数组创建
来源:互联网 发布:qt编程入门视频教程 编辑:程序博客网 时间:2024/06/05 19:26
一般的数组创建的时候必须是常量,这就造成了一些问题
比如说,我想在程序执行的时候输入二维数组的第一维为4,第二维为5,或者其他的,如果直接在程序中定义了数组的大小,有的时候数组太大浪费空间,有的时候空间又不够,这个头疼的问题
用c++创建动态数组就可以解决了,下边是c++的代码
#include<iostream>using namespace std;int main() {cout << "请输入矩阵行列数字m n:"<< endl;int m, n;cin >> m >> n;int **a = new int *[m];for (int i = 0; i < m; i++)a[i] = new int[n];cout << "请按行优先顺序输入数组元素:" << endl;for (int i = 0; i < m; i++)for (int j = 0; j < n; j++)cin >> a[i][j];cout << "输出:" << endl;for (int i = 0; i < m; i++) {cout << endl;for (int j = 0; j < n; j++)cout << a[i][j]<<" ";}return 0;}
精华在于此三行
int **a = new int *[m];
for (int i = 0; i < m; i++)
a[i] = new int[n];
就是这个格式
删除的话
for(int i=0;i<m;i++)
delete[] a[i];
delete [] a;
另外,这是C语言的实现
int **p;p = (int**)malloc(size*sizeof(int*));int i;for ( i = 0; i < size; i++ ){*p = (int *) malloc( size2*sizeof(int) );}
删除如下
for(i=0;i<size;i++) free(p[i]);free(p);
另外,需要加上头文件:
#include<stdlib.h>
0 0
- 动态创建数组
- C#创建动态数组
- 动态创建数组
- 创建动态数组
- 动态创建二维数组
- 动态创建数组
- C#动态创建数组
- 动态创建二维数组
- 动态创建多维数组
- 动态创建二维数组
- 动态创建数组
- 创建动态数组
- java动态创建数组
- 创建动态数组
- C#创建动态数组
- 动态创建整形数组
- 动态创建数组
- 动态创建二维数组
- 解决ubuntu上ifconfig没有eth0且无法上网的问题
- AsyncHttpClient 加载图片
- eclipse添加Sever,无可选择的项目
- Android xml资源文件中@、@android:type、@*、?、@+含义和区别
- 封装常用数据库方法及连接(config)
- 动态数组创建
- linux系统时间对java.Timer执行产生的影响
- 第十三周 项目一(1)Prim算法的验证(使用图1作为测试用例)
- Lightoj 1021 Painful Bases (状压dp 有趣)
- suibi
- iOS 【UIKit-UIDatePicker】
- Web应用程序基础知识
- putty基本配置
- jQuery Raty 源码改造,设置自己想要的值