尝试创建链接列表但指针分配错误

时间:2010-04-21 10:21:29

标签: c

我正在尝试创建链接列表并创建一些方法。但是,我收到了错误:

  

赋值使整数指针不带强制转换。

这是我的代码:

#include <stdio.h>
#include <stdlib.h>
#include "students.h"


node_ptr create(void)
{
    node_ptr students = (node_ptr) malloc(sizeof(struct node));
    students->ID = 0; 
    students->name = NULL;
    students->next = NULL; 
    return students;
}

void insert_in_order(int n, node_ptr list)
{
    node_ptr before = list;
    node_ptr new_node = (node_ptr) malloc(sizeof(struct node));
    new_node->ID = n; //error is here I think


    while(before->next && (before->next->ID < n))
    {
        before = before->next;
    }

    new_node->next = before->next;
    before->next = new_node;
}

1 个答案:

答案 0 :(得分:0)

如果错误在注释行上,则可能ID是指针,而不是int。这样可以正常工作:

students->ID = 0; 

因为它将指针设置为NULL,所以它编译时没有错误/警告。