我不确定我是否正确理解了链表的概念。我想做的是创建一个链表,它接收整数 6 作为它的第一个“数据”。相反,当我尝试将整数写入第一个节点的数据时,我得到了这个访问冲突错误。我在这里错过了什么具体的东西吗?
    ///////////////////////////////
typedef struct List_Node
{
    int data;
    struct List_Node* next;
}List_Node;
typedef struct List
{
    List_Node* head;
}List;
////////////////////////////////
List* create_list();
void print_list(List_Node *x);
void add_to_node(List_Node *a,int val);
////////////////////////////////
void main()
{
    List *a = create_list();
    List_Node *ind = a->head;
    printf("List:\n");
    add_to_node(ind,6);
}
void print_list(List_Node *a)
{
    while(a != NULL)
    {
        printf("%d \n",a->data);
        a = a->next;
    }
    return;
}
void add_to_node(List_Node *a,int val)
{
    a->data = val;
}
struct List* create_list()
{
struct List* list = (List*) malloc(sizeof(List));
list->head = NULL;
return list;
}