可以用指针传地址过来。我举个例子吧。
#include
int* red(int len);
main()
{
int a,b,*c;
c=red(10);
for(a=0;a<10;++a)
for(b=0;b<10;++b)
printf("%5d",*(c+a*10+b));
free(c);
return 0;
}
int* red(int len)
{
int *sp,a,b;
sp=malloc(sizeof(int)*len*len);
for(a=0;a
return sp;
}
显然是不能的。返回类型是必须确定的,而按你的意思,就必须返回一个不确定的类型。
当然,如果不死抠这点,只讲实际编程的话,这个问题是可以解决的,定义一个结构体(或者类),保存数组指针和维数,然后返回这个结构体就可以了。