2012-03-30 68 views
0

那么我的项目需要我在链接列表中创建链接列表。这样定义它可以吗?这是我如何在链接列表中创建链接列表?

struct users { 
    int user_ID; 

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

    struct users *next; 
}; 
+4

Y ............ – 2012-03-30 13:39:58

+0

我认为就是这样......是否有任何问题或错误? – 2012-03-30 13:41:22

+0

还没有试过。 – 2012-03-30 13:41:42

回答

1

为什么不分开结构?

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


struct users { 
    int user_ID; 

    struct Playlist playlist 
    struct users *next; 
}; 

它使读起来更容易,更容易理解。

+0

播放列表中的大写字母P? – 2012-03-30 13:47:43

+0

nope,它只是告诉struct-name和变量名appart的一种方式。 – 2012-03-31 07:39:58

1

是的,在struct中有struct成员,这就是你正在做的事。

有些人觉得它好看抽象出了“链表”的数据,只是实例,每当需要的,但这样做可能会涉及到需要转换。

0

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

问题处理:当使用链表时,很容易让代码变得粗糙,或者忘记一行代码,所以编写一组函数/宏来执行列表操作并始终调用它们,这样你只需要一次