第1个回答 推荐于2017-09-20
链表 并不是每个节点都需要 变量 名的,访问每一个节点是通过指向它的指针来实现的,比如说: struct Node{ Node* next; }; Node* head; 由这个结构体作为节点的单向非环形链表,我们访问它的话只需要知道它的头指针就可以了,比如说头指针是head,那么第五个节点就是head->next->next->next->next->next; 事实上并不是说每一个变量都要有名字,我们只要能够访问到它的地址就OK了,我们写int a;那么通过对a的访问,我们访问到了操作系统分配给int变量a的地址,同样,我们如果有int* ptr = new int;那么对于新分配那个int变量的内存(就是用语句new int分配到的),我们可以通过对*ptr的访问来访问到它.而我们并没有给那块内存命名成一个int变量,也就是说,它没有名字,但是我们依然可以访问到它,我们只要能够知道它在什么地方就可以了.上面那个第五个节点的问题中,第五个节点的变量名也可以认为是 *(head->next->next->next->next->next),因为括号里面的指针是指向它的,那么对指针取引用,就找到了第五个节点. 头节点和尾节点的名称也可以是任意合法的 变量 名称,不一定是*head和*tail,但是命名成这两个会比较好,因为这是人们约定俗成的东西,比较容易被其他阅读你代码的程序员理解,大家都知道你命名这个是要实现什么意思.形成一个好的变量命名的习惯也是好的编程习惯之一哦^本回答被提问者采纳