歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

C++二維指針分配內存空間

C++二維指針分配內存空間

int **p;
    int x;
    p=new int*[5];
    for (int i=0;i<5;i++)
    {
      p[i]=new int[4];
    }
 
  使用時:
 
  for(int i=0;i<5;i++)
    for(int j=0;j<4;j++)
      p[i][j]=i+j;
  for(int i=0;i<5;i++)
    for(int j=0;j<4;j++)
      {
        std::cout<<p[i][j];
        if(j==3)
        std::cout<<std::endl;
      }
 
  釋放內存時應該注意釋放方法:
 
  for(int i=0;i<5;i++)
 
    delete[] p[i];
 
  delete[] p;
 或者:
      分配:
    tSendCmdContent=(char**)malloc(/*MATRIX_IN_COUNT*/MATRIX_OUT_COUNT*sizeof(char*));     
  for(int j=0;j <MATRIX_OUT_COUNT/*MATRIX_IN_COUNT*/;j++)     
 
  tSendCmdContent[j]=(char*)malloc(MATRIX_CMD_LEN*sizeof(char)); 
    釋放:
  for(int j=0;j <MATRIX_OUT_COUNT/*MATRIX_IN_COUNT*/;j++)     
  {     
    free(tSendCmdContent[j]);     
  }     
  free(tSendCmdContent); 

Copyright © Linux教程網 All Rights Reserved