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

📄 customlist.h

📁 igmp for switch in vxworks
💻 H
字号:
/********************************************************************
	创建时间:	2004-03-23   15:45
	
	文件名: 	CustomList.h
	
	文件路径:	e:\Project\Work\Timer
	
	创建人:		陈	皓
	
	文件介绍:	声明双向链表的操作接口
*********************************************************************/

#ifndef _CUSTOMLIST_H
#define _CUSTOMLIST_H

#include <stdio.h>

typedef struct SCustomList
{
	struct SCustomList *pNext;
	struct SCustomList *pPrev;
}SCustomList;

#define CUSTOM_LIST_INIT(name) { &(name), &(name) }

#define CUSTOM_LIST_HEAD(name) \
SCustomList name = CUSTOM_LIST_INIT(name)

#define INIT_CUSTOM_LIST(ptr) do { \
	(ptr)->pNext = (ptr); (ptr)->pPrev = (ptr); \
} while (0)

#define CLEAR_CUSTOM_LIST(ptr) do { \
	(ptr)->pNext = NULL; (ptr)->pPrev = NULL; \
} while (0)

#define EntryList(ptr, type, member) \
	((type *)((char *)(ptr)-(unsigned long)(&((type *)0)->member)))

#define ForEachList(pos, head) \
	for (pos = (head)->pNext; pos != (head); pos = pos->pNext)


void CustomAddList(SCustomList *pElement, SCustomList *pPrev, SCustomList *pNext);
void CustomAddHead(SCustomList *pElement, SCustomList *pHead);
void CustomAddTail(SCustomList *pElement, SCustomList *pHead);
void CustomDelList(SCustomList *pElement);
BOOL CustomEmptyList(SCustomList *pHead);
/*void CustomSpliceList(SCustomList *pList, SCustomList *pHead);*/

#endif/*_CUSTOMLIST_H*/

⌨️ 快捷键说明

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