该楼层疑似违规已被系统折叠 隐藏此楼查看此楼
#include
#include
int main()
{
int m = 0,n = 0;
printf("请输入数组长度:");
scanf("%d",&m);
int* q = (int*)malloc(n*sizeof(int));
if(q==NULL)
{printf("内存分配失败!");
return 0;
}
for(;n
{
q[n]=1+n;
}
for(n=0;n
{
printf("%d ",q[n]);
}
printf("\n");
free(q);
q = NULL;
return 0;
}
请输入数组长度:7
1 2 3 4 5 6 7
*** Error in `./a.out': free(): invalid next size (fast): 0x0000000000e4c010 ***
a.out: malloc.c:2369: sysmalloc: Assertion `(old_top == (((mbinptr) (((char *) &((av)->bins[((1) - 1) * 2])) - __builtin_offsetof (struct malloc_chunk, fd)))) && old_size == 0) || ((unsigned long) (old_size) >= (unsigned long)((((__builtin_offsetof (struct malloc_chunk, fd_nextsize))+((2 * (sizeof(size_t))) - 1)) & ~((2 * (sizeof(size_t))) - 1))) && ((old_top)->size & 0x1) && ((unsigned long)old_end & pagemask) == 0)' failed.
已放弃 (核心已转储)