初始化二维指针

#include <iostream>
using namespace std;

int main()
{
    double **a;

    a=new double *[3];            //初始一个三行二列的矩阵
    for (int i=0;i<3;i++)        
    {
        a[i]=new double[2];
    }

    a[0][0]=1;
    a[0][1]=2;
    a[1][0]=4;
    a[1][1]=5;
    a[2][0]=7;
    a[2][1]=8;

    for (int i=0;i<3;i++)
    {
        for (int j=0;j<2;j++)
        {
            cout<<a[i][j]<<"  ";
        }
        cout<<endl;
    }

    for (int i=0;i<3;i++)
    {
        delete[] a[i];
    }
    delete[] a;

    system("pause");

    return 0;
}

一般都是用一维指针模拟二维数组的行为,还是第一次用二维指针表示二维数组。最后只有这样删除指针才不会内存泄露。

原文地址:https://www.cnblogs.com/tiandsp/p/2679262.html