把指针当作动态数组使用
指针当作数组用动态内存分配
是数组就会有bai长度限制的,你可du以用指针动态分配一个数组
例如:
int * array;//定义指zhi针
int size;//数组的大小dao
cin>>size;//输入数组大小
array = new int[size];//(C++的方式动态分配数组)
array = (int*)malloc(size*sizeof(int));//(C语言的方式)
…
delete []array;// (C++的方式释放动态空间)
free(array);(C语言的方式)
如果你想要一个无限制的数据结构建议你使用链表、
如果你非要用数组,建议你使用向量vector,你可以参考<<完美c++>>是一本经典教程
代码C语言
//指针可以当作数组来用
#include<stdio.h>
#include<stdlib.h>int main()
{int number;int *a;int i;printf("input number:");scanf("%d",&number);a = (int*)malloc(number*sizeof(int));for(i=0;i<number;i++){scanf("%d",&a[i]);}printf("start reverse output:\n");for(i=number-1;i>=0;i--){printf("%d\n",a[i]);}free(a);//释放内存return 0;}
输出
把指针当作动态数组使用相关推荐
- 智能指针的动态数组的使用
在C++编程里,最基本的操作就是内存分配和删除,也即是内存管理,这个特性是C++的主要优点也是缺点,为什么这样说呢?因为管理得好,是性能提升很高,其它语言是无法比拟的,管理不好就是坏处一大堆,比如内存 ...
- 智能指针分配动态数组
auto ptr_arr = std::make_shared<int[]>(); std::unique_ptr<int[]> up1(new int[10]()); //C ...
- Delphi 指针, 静态数组, 动态数组
https://www.cnblogs.com/shangdawei/archive/2013/04/30/3051656.html指针 : 指针是一个特殊的变量, 它里面存储的数值被解释成为内存里的 ...
- 静态数组和动态数组 内存分布
数组是程序设计中是一个非常重要的概念.数组是一个用于收集大量类似数据的容器, 以及其每一个元素能被相同处理过程迭代来处理的一个抽象体. 创建数组一般有三种方式:全局/静态范围的数组,局部变量数组,申请 ...
- java动态数组的实现的_基于Java的动态数组分析与实现
动态数组 概念 基于Java提供的静态数组封装自己的动态数组,动态数组涉及的组成部分如下图所示. 组成部分解读data:静态数组,通过泛型支持多种类型的元素:private E[] data;. si ...
- C++智能指针与动态内存分配
智能指针 一般有三种智能智能指针:std::shared_ptr.std::unique_ptr和std::wek_ptr.std::shared_ptr允许多个指针共享内存对象,std::uniqu ...
- 数据结构与算法:动态数组(利用万能指针实现任意类型数组操作)
原理介绍 我们利用万能指针来实现动态数组,数组元素类型可以是任意类型,因为我们只维护用户提供的数据的地址,所以可以用万能指针来接受,这样就实现了类似C++中的模板功能了. 先说说动态数组和静态数组.静 ...
- 关于动态数组指针操作的两个例子
最近突然感觉 Delphi 的动态数组非常好用, 善用它可以省略很多 GetMem.ReallocMem; 并且它是被自动维护的. 动态数组变量 arr 本身就是指针, 不能再用 @arr 获取; 但 ...
- C专家编程 第10章 再论指针 10.7 使用指针创建和使用动态数组
使用指针创建和使用动态数组 当预先并不知道数据的长度时,可以使用动态数组.绝大多数具有数组的编程语言都能够在运行时设置数组的长度.它们允许程序员计算需要处理的元素的数目,然后创建一个刚好能容纳 ...
最新文章
- chrome浏览器测试插件postman安装
- linux shell 查看 cpu核数
- 视频直播技术详解(3)编码和封装
- Python监听剪切板的两种方法
- 在日常维护管理中对MySQL 日志的需求
- Delphi 正则表达式之TPerlRegEx 类的属性与方法(6): EscapeRegExChars 函数
- 深度理解linux内核零拷贝,面试题:如何理解 Linux 的零拷贝技术?
- 安徽 计算机一级考试题库,计算机一级考试题库和答案
- IDEA SSH工具连接方式
- 如何使用鲁大师进行驱动备份
- DoEvents 方法使用小结
- Linux 中的 -rwxr-xr-x 权限代表什么意思 Linux 中的权限
- NEO4J-相似度算法04-欧几里得距离算法(euclidean)应用场景简介
- R 加权最小二乘 代码_如何用EXCEL的规划求解功能优化投资组合的阿尔法值(最小二乘估计法)?...
- 初涉网络,自己对服务器的一些基础理解
- mysql删除表的命令
- BZOJ 2277 Poi2011 Strongbox
- java 字节码分析_Java 字节码实践 - 解读
- 金融危机的影响(ISAS课题)
- 【牛客网】---字符集合