У меня проблемы с моим кодом.У меня должно быть 4 файла.list.h, listAdders.c, listMovers.c и listRemovers.c.
Я должен статически объявить 2 блока памяти для списков и узлов размеров minList и minNodes.А Malloc () разрешено использовать только во время выполнения (что означает, что я не выделяю память для каждого списка или каждого узла).
listRemovers.c и listMovers.c потребуется доступ кБлок памяти, который я выделяю, используя malloc () для моих списков и узлов.
Нет функции init (), и я не знаю, как я могу malloc () массив глобальных переменных, который будет содержать списки иВершины.
На всякий случай, если мой вопрос неясен.Как мне распределить исходный блок памяти по моей структуре списков и узлов?Поэтому, когда я создаю список или добавляю узел, они сохраняются в выделенной мной памяти.
Вот что у меня есть:
list.h
#ifndef __LIST__
#define __LIST__
#define MIN_LISTS 3
#define MIN_NODES 30
typedef struct NODE{
struct NODE* next;
struct NODE* prev;
} NODE;
typedef struct LIST{
struct NODE* head;
struct NODE* cursor;
int size;
} LIST;
extern NODE *node_block;
extern LIST *list_block;
LIST *ListCreate();
int ListAdd(LIST *list, void* item);
#endif // __LIST__
listAdders.c
#include "list.h"
#include <stdlib.h>
#include <stdio.h>
NODE *node_block = malloc(MIN_NODES * sizeof(struct NODE));
LIST *list_block = malloc(MIN_LISTS * sizeof(struct LIST));
LIST *ListCreate()
{
}
int ListAdd(LIST * list, void* item)
{
}