如何给二维数组分配内存空间
本帖最后由 u011343898 于 2013-07-16 17:45:12 编辑
#include <iostream>
using namespace std;
//分配内存空间
int **a;
a=(int **)malloc(1000*sizeof(int*));
for(int iw=0;iw<1000;iw++)
a[iw]=(int*)malloc(1000*sizeof(int));
void f(int *p, int row, int col);
int main(void)
{
int a[1000][1000];
//....给数组a[][]赋值...
f(&a[0][0], 20, 30);
return (0);
}
void f(int *p, int row, int col)
{
for (int i=0; i!=row; ++i)
{
p=p+i+1;
for (int j=0; j!=col; ++j)
{
if(*p!=0)
num++;
p=p+1;
}
}
}