⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 list.h

📁 一个用于学习的操作系统
💻 H
字号:
#ifndef _list_h_#define _list_h_#include <fairysky/stddefs.h>struct list_head{    struct list_head *next, *prev;};#define INIT_LIST_HEAD(ptr)     \do { \    (ptr)->next = (ptr); \    (ptr)->prev = (ptr); \} while (0)#define list_add(new_node, prev_node, next_node) do {\    (next_node)->prev = (new_node);      \    (new_node)->next = (next_node);      \    (new_node)->prev = (prev_node);      \    (prev_node)->next = (new_node);      \} while (0)#define list_del(entry) do {  \    (entry)->next->prev = (entry)->prev;    \    (entry)->prev->next = (entry)->next;    \} while (0)#define TASK_EACH(task_head, tmp)   \    for ((tmp) = (task_struct_t *)(task_head)->list.next; (task_head) != (tmp); (tmp) = (task_struct_t *)(tmp)->list.next)#define list_entry(ptr, type, member)   \    ((type *)((unsigned long)(ptr) - (unsigned long)(&((type *)0)->member)))/*//#define list_entry(ptr, type, member) \//    container_of(ptr, type, member)//#define container_of(ptr, type, member) ( { \//    const typeof( ((type *)0->member) *__mptr = (ptr); \//    (type *)( (char *)__mptr - offsetof(type, member) ); })*/#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -