我想知道是否有一种方法可以从用户获取二维数组的大小?例如对于一个矩阵的大小,我试图定义一个指针,并采取矩阵的大小后,使内存。 是这样的:`有没有什么办法可以从C++中的用户数组大小?
void getMatrixSize(&int,&int);
void makeMatrix(int **mat,int,int);
void getMatrixData(int **mat,int,int);
int matrixRow,matrixColumn;
int **A=NULL;
int main()
{
int row,column;
getMatrixSize(row,column);
makeMatrix(A,row,column);
getMatrixData(A,row,column);
}
getMatrixSize(int &row,int &column)
{
cout<<"Enter matrix row:";
cin>>matrixRow;
row=matrixRow;
cout<<"Enter matrix column:";
cin>>matrixColumn;
column=matrixColumn;
}
makeMatrix(int**mat,int row,int column)
{
int i=0;
mat=(int**)malloc(sizeof(int)*row);
if(mat==NULL)
{
cout<<"Error in getting memory";
exit(1);
}
for(i=0;i<row;i++)
{
mat[i]=(int*)malloc(sizeof(int))*column);
if(mat[i]==NULL)
{
cout<<"Error in getting memory";
exit(1);
}
}
}
void makeMatrixData(int**mat,int row,int column)
{
int i,j;
for(i=0;row>i;i++)
{
for(j=0;column>j;j++)
{
printf("m[%d][%d]=",i+1,j+1)
cin>>mat[i][j];
}
}
}
程序不给任何错误,但是当我运行它,它不工作。当我检查了这次脱衣舞时,我意识到它需要的内存不是用于垫子的。
这是我的想法,并没有找到任何方法使它成为work.do我们有任何方法可以从用户中获取一个二维数组的大小?
我不是语法警察,我知道这里有很多英语是第二语言的人,但这里的拼写和语法错误让我对野生猴子倾斜。 – 2011-04-01 19:30:18