C和C++里如何给多维数组动态分配内存?

请以二维数组为例举两个例子来说明。谢谢。
虽然例子我只要二维的,我要的是一种全面性的做法,如果我需要一个四维的数组,每个都挨个分配很累的。

typename * p= new typename
typename是你要返回的类型 函数new实现动态分配 指针p指向该内存区域
比如 int * p = new int[array[x][y]]; //x、y是你数组的变量
还有别忘了回收内存 delete [] p;

上面是C++里的 C里面要用malloc
例:int * p=(int *)malloc(sizeof(int)* (x*y));
回收用free(p);

你应该给我追加分!给个20吧 哈哈
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-05-16
开辟 10*10
int **p;

*p=new int [10];

for(int i=0;i<10;i++){
p[i]=new int [10];
}
请给分谢谢

没有简单的方法 要简单 请写 vector<vector<vector<.....vector<int>>>
第2个回答  2009-05-17
用二维指针
多看看书了
相似回答