0
我想寫一個列表中的列表程序。 於是就有了list.h文件:取消引用「void *」指針 - 列表中的列表
typedef struct node {
void *ptr;
struct node *next;
struct node *prev;
} NODE;
typedef struct list {
struct node *head;
struct node *tail;
int size;
char name[MAX_SIZE_NAME];
} LIST;
起初我有列表,例如list_。 現在我分配5個元素。
並在每個節點我想分配一個新的列表。 我tryed與此代碼:
if (list_->head->next == list_->tail) {
list_ins_next(list_);
ptr = list_->tail->prev;
ptr->ptr = malloc(sizeof(LIST));
ptr->ptr->head = malloc(sizeof(NODE));
對不起我沒有那麼多的編程經驗,但是這將是巨大的,如果你能幫我
的錯誤:提領「無效*」指針
什麼是代表'節點:: ptr'?它是否總是指向包含'struct list'或是一個任意的數據存儲? – Dai
另外,如果你使用'void *',你可能做錯了什麼(因爲你放棄了類型安全)。 – Dai