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

📄 list_n.h

📁 C语言源代码及相关资料
💻 H
字号:


#ifndef	__LIST_N_H
#define	__LIST_N_H

typedef	struct   node
{
	void	*		item; //设置参数项
	struct node	* 	next;
}Node;
typedef 	Node	*	List_N;//设置参数列表。




/* 函数原型 */
/* 操作:       初始化一个列表            */
/* 操作前:    plist 指向一个列表         */
/* 操作后:   该列表被初始化为空列表       */
extern	void InitializeList(List_N * plist);

/* 操作:        确定列表是否为空列表         */
/* 操作前:     plist指向一个已经初始化的列表   */
/* 操作后:   如果该列表为空则返回true     */
/*           否则返回false         */
extern	INT8U ListIsEmpty(const List_N *plist);

/* 操作:        确定列表是否已满        */
/*操作前:     plist是一个已经初始化的列表    */
/* 操作后:   如果该列表已满则返回true     */
/*           否则返回false                */
extern	INT8U ListIsFull(const List_N *plist,INT16U	len_stru);

/* 操作:        确定列表中项目数          */
/* 操作前:     plist指向一个已初始化的列表     */
/* 操作后:   函数返回列表中的项目数 */
extern	INT32U ListItemCount(const List_N *plist);

/* 操作:        在列表结尾加入新项           */
/* 操作前:    item是要被增加到列表的项目       */
/*            plist指向一个已初始化的列表        */
/* 操作后:   如果可能的话,在列表尾部添加一个新项目    */
/*           函数返回true; 否则函数返回false			*/
extern	BOOLEAN AddItem(void	*	 item, List_N * plist,INT16U	len_stru);

/* 操作:        把一个函数作用于列表中的每个项目      */
/*              plist指向一个已初始化的列表     */
/*              pfun指向一个函数  */
/*              该函数接受一个Item参数并且无返回值      */
/* 操作后:    pfun指向的函数被做用到列表中的每个项目一次   */
/*                   executed once for each item in the list    */
extern	void Traverse (const List_N *plist, INT16U	CommType,void (* pfun)(void	* item,INT16U	commType) );
/* 操作:        把一个函数作用于列表中的每个项目      */
/*              plist指向一个已初始化的列表     */
/*              pfun指向一个函数  */
/*              该函数接受一个Item参数并且无返回值      */
/* 操作后:    pfun指向的函数被做用到列表中的每个项目一次   */
extern	void Traverse_u  (const List_N * plist,INT16U	commType,INT8U	*	buff,INT16U	*	inewlen, 
						void (* pfun)(void	* item,INT16U	commType,INT8U	*	buff,INT16U	*	inewlen) );
/* 操作:        释放已分配的内存(如果有)         */
/*              plist指向一个已初始化的列表        */
/* 操作后:  	 为该列表分配的内存已被释放        */
/*           	并且该列表被置为空列表               */
extern	void EmptyTheList(List_N * plist);

#endif






⌨️ 快捷键说明

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