#include
#include
#include
//模板结点
template
struct LNode{
ElemType data;
struct LNode* next; //指针域
};
template
struct List
{
struct LNode *head;
struct LNode *tail;
int len;
};
//创建线性表
template
void CreatList(struct List &L)
{
L.head=L.tail=(struct LNode*)malloc(sizeof(struct LNode));
L.head->next=NULL;
L.len=0;
}
template
void Insert(struct List &L,ElemType e)
{
struct LNode* s=(struct LNode*)malloc(sizeof(struct LNode));
s->data=e;
s->next=NULL;
L.tail->next=s;
L.tail=s;
L.len++;
}
struct association;
typedef struct Student
{
char no[15];
char name[20];
char sex;
char grade[5];
char major[24];
struct List ass_list;
}*p_stu,stu;
void addStu(struct List &s_L)
{
stu s;
char no[15];
char name[20];
char grade[5];
char major[24];
scanf("%s",no);
strcpy(s.no,no);
scanf("%s",name);
strcpy(s.name,name);
fflush(stdin);
scanf("%c",&s.sex);
scanf("%s",grade);
strcpy(s.grade,grade);
scanf("%s",major);
strcpy(s.major,major);
CreatList<struct association*>(s.ass_list);
Insert<stu>(s_L,s);
}
int main()
{
struct List s_L;
s_L.head=NULL;
s_L.tail=NULL;
addStu(s_L);
return 0;
}
http://www.cnblogs.com/mr-wid/p/3380337.html
是不是因为结构里包含结构,所以赋值出现了问题?