gpt4 book ai didi

c - c中的结构体链表

转载 作者:行者123 更新时间:2023-11-30 20:36:09 24 4
gpt4 key购买 nike

我正在尝试创建一个链表,其中包含指向结构的数据,但在创建节点时遇到问题。

 typedef struct n_data{
char name[16];
int integer;
} DATA;

typedef struct node{
DATA * data;
struct node *next;
} NODE;

typedef struct{
int num;
NODE *head;
}ROOT;

我有函数 make node 返回一个节点,该节点包含指向 DATA 结构的数据:

NODE *makeNode(DATA *d){
NODE *temp;
temp = (NODE*)malloc(sizeof(NODE));
if(temp != NULL){
temp->data= d;
temp->next = NULL;
}
return temp;
}

我的主要看起来有点像这样:

int main(){
DATA* newdata=(DATA*)malloc(sizeof(DATA));
strcpy(newdata->name,"Hello");
newdata->integer=7;

NODE * temp;
temp = make_node(newdata);
}

我收到错误

警告:赋值使指针来自整数而不进行强制转换[默认启用]

我不确定我做错了什么,所以有人可以帮助我吗?

最佳答案

您的代码有错误

将行 temp = make_node(newdata); 更改为 temp = makeNode(newdata);

关于c - c中的结构体链表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36709822/

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