c语言中具有多维数组的指针
我有一个函数,可以生成0到2之间的随机数,我想使用指针,但无论如何我无法执行它。 首先我生成随机数,然后我想打印多维数组以查看它生成了什么c语言中具有多维数组的指针,c,arrays,pointers,multidimensional-array,C,Arrays,Pointers,Multidimensional Array,我有一个函数,可以生成0到2之间的随机数,我想使用指针,但无论如何我无法执行它。 首先我生成随机数,然后我想打印多维数组以查看它生成了什么 我只想将随机数分配给一个数组(使用指针),然后再次使用指针打印它们 int **RandomizedMatrix; //integer multidimensional array int ***AdressOfMatrix = &RandomizedMatrix; //assigning the adress of matrix
我只想将随机数分配给一个数组(使用指针),然后再次使用指针打印它们
int **RandomizedMatrix; //integer multidimensional array
int ***AdressOfMatrix = &RandomizedMatrix; //assigning the adress of matrix to an integer pointer
void RandomizedMatrixGenerator(int LineNumber,int ColumnNumber,int ***AdressOfMatrix)
{
int i,j;
for (i=0; i<LineNumber*ColumnNumber; i++)
{
**AdressOfMatrix = rand()%2;
}
for (i=0; i<LineNumber; i++)
{
for (j=0; j<ColumnNumber; j++)
{
printf("%d",***(AdressOfMatrix+i)+j);
}
printf("\n");
}
}
int**RandomizedMatrix//整数多维数组
int***肾上腺基质=&随机基质//将矩阵的地址分配给整数指针
void randomizedMatrix生成器(整数行号、整数列号、整数***肾上腺矩阵)
{
int i,j;
对于(i=0;iOK,所以要分配随机数,需要两个for()
循环:
for (i=0; i<LineNumber*ColumnNumber; i++)
{
**AdressOfMatrix = rand()%2;
}
因此,给定4x3矩阵,可以得到如下输出:
[99][33][38]
[59][2][28]
[50][39][2]
[85][45][99]
如果我的理解是正确的,你想用1和0填充你的二维数组,这样你就可以做到
void randmtrgen(int row,int column,int **mtr){
int i,j;
for (i=0;i<row;i++){
for (j=0;j<column;j++){
mtr[row][column]=rand()%1+1;
}
}
}
我不确定你想要什么帮助,除了被告知你是对的之外,你需要学习如何使用指针。我确信如果你在搜索引擎中输入“指针C”,你会找到很多关于它们的页面。(提示:你必须让它们指向某个东西。)你对指针有什么特别的问题吗?这是一个大话题。我只想给数组分配一个随机数(使用指针),然后再次使用指针打印它们
void randmtrgen(int row,int column,int **mtr){
int i,j;
for (i=0;i<row;i++){
for (j=0;j<column;j++){
mtr[row][column]=rand()%1+1;
}
}
}
*(*(mtr+row)+column)=rand()%1+1;