这是我如何在链表中建立链表?

时间:2012-03-30 13:39:10

标签: c types struct linked-list

我的项目要求我在链接列表中创建一个链接列表。我可以这样定义它吗?

struct users {
  int user_ID;

  struct playlist{
    int album;
    int track_num;
    struct playlist *next;
  }

  struct users *next;
};

3 个答案:

答案 0 :(得分:1)

为什么不将结构分开?

struct Playlist{
    int album;
    int track_num;
    struct Playlist *next;
}


struct users {
  int user_ID;

  struct Playlist playlist 
  struct users *next;
};

它使阅读更容易,更容易理解。

答案 1 :(得分:1)

是的,在struct中拥有struct成员绝对没问题,这就是你正在做的事情。

有些人发现很好地抽象出“链表”数据,并在需要时实例化,但这样做可能需要进行投射。

答案 2 :(得分:0)

是的,链表是一组具有相互指针的结构,因此您的解决方案是有效的。

程序问题:使用链接列表时,很容易指责代码,或忘记一行,所以编写一组函数/宏来执行列表操作并始终调用它们,以便您只需要一次