Тип определения списка находится в связанномList.h, как обычно.Связанный список в C с узлом заголовка
#ifndef LINKEDLIST_H
#define LINKEDLIST_H
typedef struct snode {
int value;
struct snode *next;
} snodeType;
typedef struct hnode {int count;
snodeType *first;
snodeType *last;
} sList;
sList* create_sList(void);
int insert_element_s(sList *L, snodeType *p, int value);
int delete_element_s(sList *L, snodeType *p);
sList* merge_lists(sList *L1, sList *L2);
#endif /* LINKEDLIST_H */
Вопрос:
SLIST * create_sList (аннулируются) создает список и возвращает его к абоненту. Он должен выделить память для узла заголовка, инициализировать поля в структуре hnode.
sList* create_sList(void) {
sList *list = NULL;
list->first = (sList*)malloc(sizeof(snodeType));
list->last = (sList*)malloc(sizeof(snodeType));
/* 2nd option
sList *list = NULL;
node = malloc(sizeof(snodeType));
node->next= NULL;
list->first = node;
list->last = node;
*/
return list;
}
Мне нужно просто начать этот связанный список, есть кто-то, кто знает, как это сделать?
Что вы понимаете, инициировав список? –
'sList * create_sList (void) {sList * list = malloc (sizeof (* list)); list-> count = 0; list-> last = list-> first = NULL; возвратный лист; } ' – BLUEPIXY