gpt4 book ai didi

c - 从 C 中的不兼容指针类型警告返回

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

我对 C 不是很熟悉,当我尝试使用 C 构建链表时,我遇到了一个小问题,希望有人为我澄清一下。

到目前为止,这是我的代码:

typedef struct {
struct dlinkNode_t *next;
struct dlinkNode_t *prev;
void *value;
} dlinkNode_t;

dlinkNode_t* getNext(dlinkNode_t *ptr){
/**return the next node of the node pointed by ptr. Return NULL if next element*/
return ptr->next;

当我尝试编译它时,我收到了以下警告:

"warning: return from incompatible pointer type"

我将dlinkNode_t 定义为链表节点的类型,每个节点有2 个指向前向和后向的指针。我应该将 getNext 的返回类型定义为:

struct dlinkNode_t*

但这似乎违背了typedef的目的,因为我想将dlinkNode定义为一个新的类型。任何帮助都会很好。

谢谢!

最佳答案

希望这有帮助.. struct 必须有名称,当你在其中使用相同的 struct 指针时......

typedef struct dlinkNode {
struct dlinkNode *next;
struct dlinkNode *prev;
void *value;
} dlinkNode_t;

dlinkNode_t* getNext(dlinkNode_t *ptr){
/**return the next node of the node pointed by ptr. Return NULL if next element*/
return ptr->next;

关于c - 从 C 中的不兼容指针类型警告返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14533898/

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