3

我有一个链表类型的结构,其骨架代码如下所示。但是,当我编译代码时,我得到“警告:来自不兼容指针类型的赋值”操作 temp = temp-> next。我只是想知道为什么以及是否应该担心。提前致谢!

typedef struct data {
    size_t size;
    struct data_t* next;
} data_t;

void* dmalloc(size_t numbytes) {
    while(temp!=NULL){
        if(temp->size>=numbytes) {
            //do something
        }
    temp = temp->next; //problem line
    }
return NULL;
}
4

1 回答 1

3

您不能在 typedef 创建之前使用它。将您的结构更改为:

typedef struct data {
    size_t size;
    struct data* next;
} data_t;
于 2013-01-25T23:31:53.410 回答