1
我试图创建一个线性链接列表。创建节点线性链接列表
看起来很简单,但即使代码看起来不错,它也不会编译。
这里是头文件和主。你能告诉我问题是什么吗?
#include <malloc.h>
typedef int TYP;
typedef struct
{
TYP info;
node_linear_linked_list *next;
} node_linear_linked_list;
void init_linear_linked_list(node_linear_linked_list **manager)
{
*manager = NULL;
}
void push_linear_linked_list(node_linear_linked_list **manager, TYP info)
{
node_linear_linked_list *ptr =
(node_linear_linked_list *)malloc(sizeof(node_linear_linked_list));
ptr->info = info;
ptr->next = *manager;
*manager = ptr;
}
void insert_after_linear_linked_list(node_linear_linked_list *before, TYP info)
{
node_linear_linked_list *ptr =
(node_linear_linked_list *)malloc(sizeof(node_linear_linked_list));
ptr->info = info;
ptr->next = before->next;
before->next = ptr;
}
void pop_linear_linked_list(node_linear_linked_list **manager)
{
node_linear_linked_list *temp_ptr = *manager;
*manager = temp_ptr->next;
free(temp_ptr);
}
void delete_after_linear_linked_list(node_linear_linked_list *before)
{
node_linear_linked_list *temp_ptr = before;
before->next = before->next->next;
free(temp_ptr);
}
这里的主:
#include <malloc.h>
#include "node_linear_linked_list.h"
void main(void)
{
node_linear_linked_list *manager =
(node_linear_linked_list *)malloc(sizeof(node_linear_linked_list));
init_node_linear_linked_list(&manager);
getch();
}
希望得到一些帮助。谢谢。
'typedef struct { TYP info; node_linear_linked_list * next;' - >'typedef struct node TYP info; struct node * next;' – BLUEPIXY
@Maya编译器报告错误。阅读其诊断信息。 –
不要将函数放在头文件中,这不是如何使用头文件。 –