我试图动态分配一个 pthread 指针数组,但得到这个 glibc 错误:
*** glibc detected *** ./test: realloc(): invalid next size: 0x00000000084d2010 ***
编码:
#include <stdio.h>
#include <stdlib.h>
#include <pthread.h>
int main(int argc, char** argv) {
pthread_t **threads;
int i;
for(i=1;i<100;i++) {
threads = realloc(threads, sizeof(pthread_t*)*i);
threads[i] = malloc(sizeof(pthread_t));
}
return EXIT_SUCCESS;
}
我在这里做错了什么?