前言
本篇文章我们带大家学习如何查看学生信息及链表的释放。
一、查看学生信息
查看每一个学生的信息需要我们去遍历链表
第一步:定义一个结构体指针指向头,判断头是否为空为空则提示没有学生信息。
第二步:每一次循环都让PTemp向后移动一个,当移动到最后一个时PTemp为NULL则不再执行循环。
void showdate() { STUNODE *pTemp = g_pHead; if (pTemp == NULL) { printf("无学生信息!\n"); } while (pTemp != NULL) { printf("学号:%s,姓名:%s,分数:%d\n",pTemp->arrStunum,pTemp->arrStuname,pTemp->iStuSorce ); //向后移动 pTemp = pTemp->pNext; } }
二、链表的释放
链表的释放和链表的遍历有一些相同的地方
第一步:定义一个结构体指针指向头,判断头是否为空
第二步:使用PTemp记住头节点的位置,头节点向后移动一个位置,并把PTemp释放,如此循环就可以清空链表。
第三步:当清空完链表后要把头尾指针都指向NULL。
//清空链表 void FreeLinkDate() { STUNODE *pTemp = g_pHead; while (g_pHead != NULL) { //记录节点 pTemp = g_pHead; //向后移动 g_pHead = g_pHead->pNext; //删除节点 free(pTemp); } g_pHead = NULL; g_pEnd = NULL; }
总结
大家可以自己好好操作一遍,有什么不清楚可以留言和私信。