/********************************************************************************************************* * 模块名称:Queue.h * 摘 要:Queue模块 * 当前版本:1.0.0 * 作 者:Leyutek(COPYRIGHT 2018 - 2021 Leyutek. All rights reserved.) * 完成日期:2021年07月01日 * 内 容: * 注 意: ********************************************************************************************************** * 取代版本: * 作 者: * 完成日期: * 修改内容: * 修改文件: *********************************************************************************************************/ #ifndef _QUEUE_H_ #define _QUEUE_H_ /********************************************************************************************************* * 包含头文件 *********************************************************************************************************/ /********************************************************************************************************* * 宏定义 *********************************************************************************************************/ /********************************************************************************************************* * 枚举结构体 *********************************************************************************************************/ //定义数据类型,即队列中元素的数据类型 typedef unsigned char DATA_TYPE; //定义循环队列结构体 typedef struct { short front; //头指针,队非空时指向队头元素 short rear; //尾指针,队非空时指向队尾元素的下一个位置 short bufLen; //队列的总容量 short elemNum; //当前队列中的元素的数量 DATA_TYPE *pBuffer; //循环队列的缓冲区 }StructCirQue; /********************************************************************************************************* * API函数声明 *********************************************************************************************************/ void InitQueue(StructCirQue* pQue, DATA_TYPE* pBuf, short len); //初始化队列 void ClearQueue(StructCirQue* pQue); //清队列 unsigned char QueueEmpty(StructCirQue* pQue); //判断队列是否为空,1为空,0为非空 short QueueLength(StructCirQue* pQue); //返回队列中元素个数,即为队列的长度 short EnQueue(StructCirQue* pQue, DATA_TYPE* pInput, short len); //入队len个元素 short DeQueue(StructCirQue* pQue, DATA_TYPE* pOutput, short len); //出队len个元素 #endif