双向链表
不存在专用于创建链表的函数。而是简单地创建一个类型为 Glist* 的变量,并把它的值设置为 NULL;NULL被当作空表。
GList *g_list_append( GList *list, |
GList *g_list_prepend( GList *list, |
GList *g_list_insert( GList *list, |
此函数插入一个新元素(具有值data )到链表中指定位置,如果位置是 0,它和 g_list_prepend() 函数作用相同,如果位置,它和 g_list_append() 函数作用相同。
GList *g_list_remove( GList *list, |
此函数从表中移除一个具有值data 的元素,如果该元素不存在,链表不变。
void g_list_free( GList *list ); |
此函数释放由Glist使用的所有存储区,如果表元素空间是通过动态分配的,则应首先被释放。
还有许多其它支持双向链表的Glib函数;查看文档获得更多的信息。这儿列出几个更有用的函数的声明:
GList *g_list_remove_link( GList *list, |
<<< Previous | Home | Next >>> |
GLib | Up | 单向链表 |