gpt4 book ai didi

c - 从 c 中不兼容的指针类型赋值,用于指向结构的指针

转载 作者:太空宇宙 更新时间:2023-11-04 02:45:41 25 4
gpt4 key购买 nike

我是 c 的新手,我正在尝试实现一个链表。我写了这个:

struct List;
typedef struct List* ListRef;
struct List{
void *data;
ListRef next;
ListRef last;
};

ListRef newList(void* headData);
[...]

ListRef append(ListRef list, void* data){

ListRef newlist = newList(data)

list->last->next = newList; //here I get a warning
list->last = newList; //here I get a warning

return newList;
}

newList 编译时没有警告。在我得到评论的两行中:

警告:来自不兼容指针类型的赋值

我做错了什么?

谢谢!

最佳答案

改变

    list->last->next = newList; //here I get a warning
list->last = newList; //here I get a warning

return newList;

    list->last->next = newlist; //here I get a warning
list->last = newlist; //here I get a warning

return newlist;

分析:

您有一个名为 newList 的函数,您将其与您创建的结构实例 (newlist) 混淆了。

您一定不要像刚接触 C 语言一样编写代码。:)希望这有帮助

关于c - 从 c 中不兼容的指针类型赋值,用于指向结构的指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27675631/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com