C++中new申请动态数组
C++中数组分为静态数组和动态数组,静态数组必须确定数组的大小,不然编译错误;而动态数组大小可以不必固定,用多少申请多少。静态数组类于与我们去餐馆吃饭,餐馆会把菜做好。而动态数组类似于我们自己买菜做饭。去餐馆吃饭不需要自己动手,但是如果菜太多会吃不了,太少不够吃的;在家做饭需要自己动手做饭,而且吃完饭还要刷锅洗碗,着实很累,但是吃多少做多少,不会浪费,也不会不够。
静态数组的大小必须确定,即数组参数必须是常量,如下:
int num[];
int SimDoc[][];
动态数组的参数可以是常量,也可以是变量,但是用完之后,必须回收数组的内存空间,不然会出错:
(1)动态申请单个内存空间:
int *p = new int;
delete p;
(2)申请动态一维数组:
int k;
cin >> k;
int *p = new int[k];
int *q = new int[]; delete[] p;
delete[] q;
(3) 申请动态二维数组:
int m, n;
cin >> m >> n;
int *p = new int*[m];
for(int i =; i < m; i++){
p[i] = new int[n];
} ........... ........... for(int i =; i < m; i++){
delete[] p[i];
}
delete[] p;
C++中new申请动态数组的更多相关文章
- C++中,申请字符串数组可用new实现
		
C++中,申请字符串数组可用new实现: char ** list = new char*[MAX_NUM]; for (int i = 0; i< MAX_LOOP; i++) list[i] ...
 - C语言中怎么求动态数组大小
		
先来个简单的样例 int a[] = {1,2,3}; int arr_len = 0; arr_len = sizeof(a)/sizeof(int); 解释:sizeof() keyword是求出 ...
 - c++中new分配动态数组
		
变长一维数组 这里说的变长数组是指在编译时不能确定数组长度,程序在运行时需要动态分配内存空间的数组.实现变长数组最简单的是变长一维数组,你可以这样做: //文件名: array01.cpp ...
 - C语言实现使用动态数组来构造栈结构
		
我在面前一篇博客<C语言实现使用静态数组来构造栈结构>中使用了静态数组来模拟栈的操作.静态数组的大小是在代码中写死的.是存储在用户栈上面的,使用起来不灵活.在这篇博客中我会使用动态数组来构 ...
 - 用最复杂的方式学会数组(Python实现动态数组)
		
Python序列类型 在本博客中,我们将学习探讨Python的各种"序列"类,内置的三大常用数据结构--列表类(list).元组类(tuple)和字符串类(str). 不知道你发现 ...
 - int[]里数的个数怎么由输入决定?-----动态数组。
		
java中如何创建动态数组?(摘自百度知道) Java动态数组是一种可以任意伸缩数组长度的对象,在Java中比较常用的是ArrayList,ArrayList是javaAPI中自带的java.util ...
 - c中使用malloc动态申请二维数组
		
前言 今天写代码的时候,想要动态的申请一个二维数组空间,思索了一段时间才写出来,这里记录一下吧,以后就不至于再浪费时间了.下面以申请int型数组作为例子: 申请一维数组 一维数组的数组名可以看成数组起 ...
 - C++中关于[]静态数组和new分配的动态数组的区别分析
		
这篇文章主要介绍了C++中关于[]静态数组和new分配的动态数组的区别分析,很重要的概念,需要的朋友可以参考下 本文以实例分析了C++语言中关于[]静态数组和new分配的动态数组的区别,可以帮助大家加 ...
 - [C] 在 C 语言编程中实现动态数组对象
		
对于习惯使用高级语言编程的人来说,使用 C 语言编程最头痛的问题之一就是在使用数组需要事先确定数组长度. C 语言本身不提供动态数组这种数据结构,本文将演示如何在 C 语言编程中实现一种对象来作为动态 ...
 
随机推荐
- ubuntu查找命令比较
			
1. find find是最常见和最强大的查找命令,你可以用它找到任何你想找的文件. find的使用格式如下: $ find <指定目录> <指定条件> < ...
 - IPEndPoint
			
.NET框架用IPEndPoint 对象来表示一个特定的IP地址和端口的组合,应用该对象的场景多是在讲socket绑定到本地地址或者将socket绑定到非本地地址.
 - 使用 springmvc请求 返回 字符串时 ,中文出现乱码
			
@RequestMapping(value="/askQuestion" ,method = RequestMethod.GET , produces = {"appli ...
 - pyspider示例代码六:传递参数
			
传递参数 示例一 #!/usr/bin/env python # -*- encoding: utf- -*- # vim: ts= sts= ff=unix fenc=utf8: # Created ...
 - jQuery 插件使用记录
			
Validate 表单验证 ver 1.6 浏览更多 默认情况下,当表单 submit 时,那些验证不通过的 field 旁边会出现错误消息提示,有时很方便,但有时看起来很不美观.可以关闭此消息提示. ...
 - myeclipse svn 插件去除已经保存的密码方法
			
myeclipse svn 插件去除已经保存的密码方法 删除掉C:\Documents and Settings\hao\Application Data\Subversion\auth\svn. ...
 - delphi 数据库技术沉浮录--谨给成为历史的BDE
			
2014年9月,delphi xe7 出来了,这次在数据库技术方面,彻底抛掉了从1995 年 delphi 1.0 就自带的(Borland Database Engine)数据库访问技术.从而宣告了 ...
 - java拷贝文件到另一个目录下
			
package com.util; import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream ...
 - python 修改文件编码方式
			
import chardet import os def strJudgeCode(str): return chardet.detect(str) def readFile(path): try: ...
 - opengl中场景变换|2D与3D互转换(转)
			
opengl中场景变换|2D与3D互转换 我们生活在一个三维的世界——如果要观察一个物体,我们可以: 1.从不同的位置去观察它.(视图变换) 2.移动或者旋转它,当然了,如果它只是计算机里面的物体,我 ...