链表报错
写小的管理系统出了点问题,猜测是内存管理出了问题,但不知道是哪里
struct student{
int id;
char name[25];
char school[15];
};
struct node{
// int data;
struct student person;
struct node* next;
};
struct node* creatList(){
struct node* headNode=(struct node*) malloc(sizeof(struct node*));
headNode->next=NULL;
return headNode;
}
void assignment();
struct node* creatNode(struct student person){
struct node* newNode=(struct node*) malloc(sizeof(struct node*));
// newNode->person.id=person.id;
// strcpy(newNode->person.name,person.name);
// strcpy(newNode->person.school,person.school);
newNode->person=person;
newNode->next=NULL;
return newNode;
}
void insertNodeByHead(struct node* head, struct student person){
struct node* newNode=creatNode(person);
newNode->next=head->next;
head->next=newNode;
}
void insertNodeByTail(struct node* head,struct student person){
struct node* newNode= creatNode(person);
struct node* tailPos=head;
while (tailPos->next != NULL)
tailPos=tailPos->next;
tailPos->next=newNode;
}
这里先记录一下,免得过几天忘记了