1 #include<stdio.h> 2 #include<stdlib.h> 3 4 //单链表结构体 5 struct LinkList { 6 int data; 7 struct LinkList* next; 8 }link; 9 10 //初始化有头结点的链表 11 struct LinkList* initLinkHead() { 12 struct LinkList* head = (struct LinkList*)malloc(sizeof(link)); //申请头结点 13 head->data = -1; //头结点的数据域是 -1 14 head->next = NULL; //头结点的指针域是 NULL 15 return head; 16 } 17 18 19 void main() { 20 21 struct LinkList* head = initLinkHead(); //获取初始化后的头结点 22 struct LinkList* p = head; //初始时把头节点赋给p 23 struct LinkList* r = head; //初始时把头节点同时赋给r 24 25 for (int i = 1;i < 5;i++) { 26 p = (struct LinkList*)malloc(sizeof(link)); // p 不断申请下一个结点 27 p->data = i; //不断给p的数据域填充数据 10 20 30 40 50 28 //printf("%d ", p->data); 29 p->next = (p + i); 30 r = p; //把p刚刚申请的结点的指针域赋给r,让r始终是最后一个结点的指针域 31 printf("%d ", r->data); 32 33 } 34 } 35 36
08 链表
猜你喜欢
转载自www.cnblogs.com/shanlu0000/p/12451507.html
今日推荐
周排行