Чтобы начать, целью моей программы является создание моего собственного malloc с использованием схемы распределения контактов. Однако, когда я собираюсь скомпилировать свой код, я получаю инициализацию от несовместимой ошибки типа указателя. Я смущен тем, что именно это означает и как я могу это исправить. Вот короткий отрывок из функции, где происходит эта ошибка:C Ошибка: Инициализация с помощью несовместимого указателя
node *fList[26] = {NULL};
void *divider(int index, int baseCase) {
node *temporary = fList[index + 1];
int size = ((1 << (index + 6))/2);
node *toSplit =(char *)temporary + size; //where error occurs
if(temporary->next != NULL) {
fList[index+1] = temporary->next;
temporary->next= NULL;
fList[index+1]->previous = NULL;
}
else{
fList[index+1]=NULL;
}
temporary->next = toSplit;
toSplit->previous = temporary;
if(fList[index] != NULL){
toSplit->next = fList[index];
fList[index]->previous=toSplit;
}
else{
toSplit->next = NULL;
}
fList[index] = temporary;
temporary->previous=NULL;
temporary->header = index+5;
toSplit->header = index+5;
if(fList[index]->header == baseCase+5){
fList[index]->header |=128;
void *tmp = fList[index];
fList[index]=fList[index]->next;
if(fList[index]!=NULL)
{
fList[index]->previous=NULL;
}
return tmp;
}
else{
divider(index-1,baseCase);
}
}
Просьба представить полный текст ошибки, в которой следует выделить линию, на которой оно происходит – Greg