【发布时间】:2013-05-26 00:17:23
【问题描述】:
我的程序将是一个名字和姓氏的列表。
我有一个结构,它具有名称、姓氏和指向下一个结构对象的指针。
在 for 循环中,我将在这个“列表”中添加一个新项目,只需在命令行中写入新名称(为此我将使用 scanf)。
我想问一下如何共同创建这个列表?
到目前为止,我已经创建了 1 个可以在其中发送参数的对象,但它仅适用于 1 个对象。
感谢您的帮助!
【问题讨论】:
我的程序将是一个名字和姓氏的列表。
我有一个结构,它具有名称、姓氏和指向下一个结构对象的指针。
在 for 循环中,我将在这个“列表”中添加一个新项目,只需在命令行中写入新名称(为此我将使用 scanf)。
我想问一下如何共同创建这个列表?
到目前为止,我已经创建了 1 个可以在其中发送参数的对象,但它仅适用于 1 个对象。
感谢您的帮助!
【问题讨论】:
我假设您存储名称的结构是struct name。您可能会有一个变量来存储列表的头部:
struct name *head;
我们想追加到列表的末尾。一种方法是存储一个指针,指向我们想要将指针放置到下一个节点的位置:
struct name **tail = &head;
当我们创建一个新名称附加到列表中时,我们可以这样做:
name->next = NULL;
*tail = name;
tail = &name->next;
【讨论】: