【发布时间】:2013-08-17 11:12:55
【问题描述】:
我最近遇到了这个问题。
创建了一个单向链表,链表的节点看起来像
struct node
{
int data;
struct node* link;
};
列表是使用 add at head 创建的,列表看起来像
100->200->300
显示函数写成
void display(struct node* head)
{
while(head != NULL)
{
printf ("%d", *head);
head=head->next;
}
}
这是访问列表中数据的合法方式吗?我将它与 GCC 编译器联系起来,它发出了警告,但它起作用了。在某些情况下会导致错误吗?
【问题讨论】:
-
警告是什么? (要清楚,答案突出了问题所在,但警告应该包含在这个问题中。警告可能会帮助未来的用户找到问题和答案,并且一旦将其添加到问题中,很可能会变得很明显关于数据结构和(单个)链表的标签对于这个问题可能并不那么重要。)
标签: c pointers data-structures linked-list singly-linked-list