我在程序中需要动态分配一个2维数组,程序如下
int x,y;//数组维数,运行时给定
int i,j; 
unsigned char ** ppchar;
ppchar = (unsigned char **)new unsigned char[x][y];
for(i=0;i<x;i++)
  for(j=0;j<y;j++)
    ppchar[i][j]= 0;//执行这条语句时总出错(Access Violation)请问各位大侠如何解决,如何分配2维数组?
谢谢了

解决方案 »

  1.   

    unsigned char *ppchar;
    ppchar = (unsigned char *)new unsigned char[x][y];
      

  2.   


    int x,y;//数组维数,运行时给定
    int i,j; 
    unsigned char * ppchar;
    ppchar = (unsigned char *)new unsigned char[x * y];
    for(i=0;i<x;i++)
      for(j=0;j<y;j++)
        ppchar[i * y + j]= 0;