头指针和头结点的区别: 头指针: --头指针是指链表指向第一个结点的指针,若链表有头结点,则是指向头结点的指针 --头指针具有标识作用,所以头指针冠以链表的名字(指针变量的名字) --无论链表是否为空,头指针均不为空 --头指针是链表的必要元素 头结点: --头结点是为了操作的统一和方便而设立的,放在第一个元素的结点之前,其数据域一般无意义(但也可以用来存放链表的长度) --有了头结点,对在第一元素结点前插入结点和删除第一结点起操作与其它结点的操作就统一了 --头结点不一定是链表的必要元素