int main(void)
{
int n = 0;
int* p = NULL;
printf("请输入数组大小:");
scanf_s("%d", &n);
p = (int *)malloc(sizeof(n * 4));
for (int i = 0; i < n; i++)
{
printf("请向数组中输入数字:");
scanf_s("%d", &p[i]);
}
for (int j= 0;j < n; j++)
{
printf("%d", p[j]);
}
free(p);
return 0;
}
在VS中进行操作的debug 下会出先内存溢出,是什么原因
注意看malloc函数开辟的空间 ,这是因为malloc(sizeof(n*4))开辟的不是4个int类型的空间