请教一个简单的问题,大牛进
#include <stdio.h>int i;
int main()
{
int MAX;
printf("Enter the max number");
scanf("%d",&MAX);
int *p;
p = (int*)malloc(sizeof(int)*MAX);
if (p==NULL)
{
printf("ERROR");
return -1;
}
for (i=0;i<=MAX;i++)
{
printf("Enter number");
scanf("%d",&p[i]);
}
for (i=0;i<MAX;i++)
{
printf("%d",p[i]);
}
free(p);
return 0;
}
错在哪里?为什么会出错?