신비한 오류가 발생했으며 이유가 없습니다. 이 코드는 실패하기 전에 여러 번 실행되며 항상 동일한 지점에서 실패합니다.신비한 malloc : sysmalloc : 어설 션 오류가 발생했습니다.
여기 내 코드입니다 :
assert(size > 0);
int* sorted = malloc(size * sizeof(int));
그리고 여기에 내가 그것을 실행할 때 나는 점점 오전 오류입니다 :
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.
내가 크기를 인쇄 시도하며,이 경우 1입니다. 이 코드는 실패하기 전에 1을 포함한 다양한 크기 값으로 여러 번 실행됩니다.
내가 뭘 잘못하고 있는지 알 수있는 사람이 있습니까?
감사합니다.
라인 2369 란 무엇입니까? – ouah
가능한 복제본 [Cmalloc 어설 션 오류가 발생하는 이유는 무엇입니까?] (http://stackoverflow.com/questions/2987207/why-do-i-get-ac-malloc- assertion-failure) –
@ouah 나는 줄이 포스터의 코드의 일부가 아니라 malloc 함수의 일부라고 생각한다. 아마 그 도서관에 대한 자료가 없을 것입니다. – mah