一、用new申请内存空间
int **dp=new int*[n];//动态申请二维数组nxm for(int i=;i<n;++i){ dp[i]=new int[m]; }
二、用malloc申请内存空间
int len=; int **dp=(int **)malloc(sizeof(int) *(len+));for(int i=;i<=len;++i){
dp[i]=new int[];
}
三、使用vector创建一个二维数组
int n=,m=; //
vector<vector<int> > dp(n);//表示二维数组有 10行
for(int i=;i<n;i++){
dp[i].resize(m);//表示二维数组有 2列
}
或者
vector<vector<int> >dp(n,vector<int>(m));//定义二维数组dp[][],n行 m列