C语言函数返回数组疑惑
#include <stdio.h>
#include <string.h>
/*返回数组的函数*/
int *ArrayReturn(void);
int main()
{
int array[20] = {0};
int i;
array = ArrayReturn();
for (i = 0; i < 20; i++)
{
printf("%d\n", array[i]);
}
getch();
}
int *ArrayReturn(void)
{
int array[20];
int *p = array;
int i;
for (i = 0; i < 20; i++)
{
array[i] = i;
}
return p;
}
编译时,红色标记行出错了。返回数组函数一直很纠结啊