| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- /*********************************************************************************************************
- * 模块名称: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
|