//32*8
typedef float F8[8];
F8* pF8=new F8[32];
         pF8[i][j].....
delete []pF8;

解决方案 »

  1.   

    //测试通过!!
    typedef float F8[8];
    float (*pF8)[8];
    float *pf;
    F8* pFF=new F8[100];
    pF8=new float[32][8];
    pf=new  float[32*8];
    pF8=(F8*)pf;
    pF8=(float(*)[8])pf;
      

  2.   

    to redoak2000(小舟一叶) 
    你的代码我看不大懂,
    我自己写的一个模板,编译时没问题,可一运行就出错,
    麻烦大哥检查一下,如果检查出来的话,甘心送你20分.
    // array. h
    #include "iostream.h"
    class array
    {
    private:
    double *element1;
    double **element2;
    double ***element3;
    public:
    array(int x);
    array(int x,int y);
    array(int x, int y, int z);
    double &elem(int m);
    double &elem(int m,int n);
    double &elem(int m,int n,int k);
    ~array();
    };
    ///////////////////////////////////////////array::array(int x)
    {
    element1=new double[x];
    if(! element1)
    {
    cout<<"out of memory ";
    return;
    }
    }
    array::array(int x, int y)
    {
    element2=new double*[x];
    if(!element2)
    {
    cout<<"out of memory ";
    return;
    }
    for(int i=0;i<x;i++)
    {
    element2[i]=new double[y];
    if(!element2[i])
    {
    cout<<"out of memory";
    return;
    }
    }
    }
    array::array(int x, int y, int z)
    {
    element3=new double**[x];
    if(!element3)
    {
    cout<<"out of memory";
    return;
    }
    for(int i=0;i<x;i++)
    {
    //   element3 [i]=ewn T*[y];
    element3[i]=new double*[y];
    if(!element3[i])
    {
    cout<<"out of memory";
    return;
    }
    for (int j=0;j<y;j++)
    {
    element3[i][j]=new double[z];
    if(!element3[i][j])
    {
    cout<<"out of memory";
    return;
    }
    }
    }
    }
    ///////////////////////////////////////////////////////////////
    double & array::elem (int m)
    {
    return element1[m];
    }
    double & array::elem(int m, int n)
    {
    return element2[m][n];
    }double & array::elem(int m, int n, int k)
    {
    return element3[m][n][k];
    }///////////////////////////////////////////////////////////////
    array::~array( )
    {
    if(element1!=NULL)delete[]element1;
    if(element2!=NULL)delete[]element2;
    if(element3!=NULL)delete[]element3;
    }
    //////////////////////////////////////////////////////////////
    #include "array.h"void main()
    {
    int n=2;
    array a(n);
    for(int i=0;i<n;i++)
    {
    a.elem(i)=0.5;
    }
    array b(n);
    array c(n);};
      

  3.   

    to pqxx(深蓝):
    好好看一下指针、数组部分的理论,细想一下,你会明白的。