我将数组作为函数参数传递并在此函数中编辑它,然后我尝试在函数调用后打印它并且不编辑数组。
void RandomGen(int *t, int d1, int d2)
{
int i;
int j;
t = (int*) malloc(d1 * d2 * sizeof(int));
for(i = 0; i < d1; i++)
{
for(j = 0; j < d2; j++)
{
t[i * d2 + j] = rand() % 50;
printf("%3d " ,t[i * d2 + j]);
}
}
}
int main(void)
{
int * t;
printf("%3d", t[2]);
RandomGen(t, 2, 2);
printf("%3d", t[2]);
}