内核链表:双向循环链表
链表初始化
INIT_LIST_HEAD
链表添加节点(头插,尾插)
list_add
list_add_tail
链表的遍历(前遍历,后遍历,安全遍历)
list_for_each
list_for_each_safe
list_for_each_entry
list_for_each_entry_safe //一般在删除节点时会用到
list_for_each_entry_reverse
list_for_each_entry_safe_reverse
链表删除节点()
list_del
list_del_init
链表替换
list_replace
list_replace_init
链表移动(先删除,然后头插或尾插入到别的节点)
list_move
list_move_tail
判断链表为空
list_empty
判断链表是否为最后一个
list_is_last
参考连接 : https://www.cnblogs.com/yangguang-it/p/11667772.html