美文网首页
动态数组的分配与释放

动态数组的分配与释放

作者: 猩猩隊長 | 来源:发表于2018-12-22 22:57 被阅读0次
一维数组
int m = 5;
int *arr = new int [m];
delete [] arr;
二维数组
#include <iostream>
using namespace std;

int main() 
{
    int m = 5, n = 10, v = 0;

    //创建指针数组
    int **arr = new int* [m];

    //为指针数组的每个元素创建一个一维数组,得到arr[m][n]
    for (int i = 0; i < m; i++)
    {
        arr[i] = new int[n];
    }

    for (int i = 0; i < m; i++)
    {
        for (int j = 0; j < n; j++)
        {
            arr[i][j] = v;
            v++;
        }
    }

    for (int i = 0; i < m; i++)
    {
        for (int j = 0; j < n; j++)
        {
            cout << arr[i][j] << " ";
        }
        cout << endl;
    }

    //使用后先删除一维数组
    for (int i = 0; i < m; i++)
    {
        delete [] arr[i];
    }

    //再删除指针数组
    delete arr;

    //也可以直接delete [] arr;

    return 0;
}
三维数组
int ***array3D;
int m = 5, n = 10, h = 20;

arr = new int **[m];
for( int i=0; i<m; i++ )
{
    arr[i] = new int *[n];
    for( int j=0; j<n; j++ )
    {
         arr[i][j] = new int [h];
    }
}
//释放
for( int i=0; i<m; i++ )
{
    for( int j=0; j<n; j++ )
    {
         delete arr[i][j];
    }
    delete arr[i];
}
delete arr;

相关文章

  • 动态数组的分配与释放

    一维数组 二维数组 三维数组

  • C++ 创建动态二维数组

    有时候数组过大,栈放不下,可以利用动态分配生成动态数组 动态创建数组时一定要记得结束程序时释放内存。

  • C语言(四-链表)

    链表 因为数组必须事先确定大小,不能实现动态申请、释放。而使用malloc动态内存分配也无法实现,malloc申请...

  • 《C语言》malloc函数使用

    动态分配、静态分配 静态分配:计算机随机自动分配内存,周期结束后自动释放内存动态分配:手动分配内存,手动释放内存 ...

  • 转载:C++中使用new动态生成一个数组空间以及使用delete

    C++中使用new动态生成一个数组空间以及使用delete对存储空间进行释放。 //使用new动态分配存储空间 #...

  • C++学习笔记(一)

    new、delete运算符一次分配、释放一个对象。 new T[]动态分配一个数组,会得到一个(T*)指针类型的元...

  • 认识java(三)

    原创 第四章 java数组具有length属性(只读) 数组①数组的定义与为数组元素分配空间、赋值操作分开进行动态...

  • C语言 基础知识(二)

    静态内存 和 动态内存 分配: 静态内存:是程序编译执行后系统自动分配,由系统自动释放。静态内存是栈分配的。 动态...

  • iOS知识复习笔记(19)---数据结构和算法1

    数组和链表的区别 数组静态分配内存,链表动态分配内存 数组内存中连续,链表不连续 数组元素在栈区,链表在堆区 数组...

  • new失败抛出异常吗?

    new/delete 在C++中动态分配与释放内存是通过new/delete和new []/delete []实现...

网友评论

      本文标题:动态数组的分配与释放

      本文链接:https://www.haomeiwen.com/subject/rkawkqtx.html