我正在尝试在C中实现Queue.来自Java和其他托管语言,我真的在努力进行内存管理.这是enqueue()功能:
int enqueue(Queue q, int value) {
Node newNode = malloc(sizeof(Node));
/*newNode->value = value;
if (q->size == 0)
q->head = newNode;
else
q->head->next = &newNode;
q->size++;*/
}
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
malloc.c:3096: 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 & …Run Code Online (Sandbox Code Playgroud)