c++ 动态分配二维数组 new 二维数组

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c++ 动态分配二维数组 new 二维数组相关的知识,希望对你有一定的参考价值。

#include "stdafx.h"
#include <iostream>
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
    //建立一个16行5列的数组
    int **p = new int*[16];//分配堆内存16个 int*
    for(int i = 0;i < 16;i++)//分配堆内存给每一个int*
        p[i] = new int[5];
    
    //给这个数组赋值
    int k = 0;
    for(int i = 0;i < 16;i++)
    {
        for(int j = 0;j < 5;j++)
        {
            p[i][j] = k++;
        }
    }

    //输出二维数组
    for(int i = 0;i < 16;i++)
    {
        for(int j = 0;j < 5;j++)
        {
            cout<<p[i][j]<< "\t";
        }
        cout<<endl;
    }

    //释放
    for(int i = 0;i < 16;i++)
        delete [] p[i];
    delete [] p;
    system("pause");
    return 0;
}

以上是关于c++ 动态分配二维数组 new 二维数组的主要内容,如果未能解决你的问题,请参考以下文章

二维数组C++的动态分配

需要有关 C++ 中二维数组的动态内存分配的帮助

在 C++ 中使用动态内存分配创建二维数组

C++ new申请二维数组整理

c++中new和delete的用法

二维数组的动态分配(new)初始化(memset)和撤销(delete)