收藏 分销(赏)

定义循环缓存.doc

上传人:仙人****88 文档编号:9359517 上传时间:2025-03-23 格式:DOC 页数:3 大小:30.50KB 下载积分:10 金币
下载 相关 举报
定义循环缓存.doc_第1页
第1页 / 共3页
定义循环缓存.doc_第2页
第2页 / 共3页


点击查看更多>>
资源描述
  定义循环缓存: #define   MAX_BUFF_LEN     1024    // 定义缓存大小 typedef struct    // 定义数据结构 {     uint    data; }DATA_BUFF_T; typedef struct    // 定义缓存结构 {     uint    readPos;     uint    writePos;     DATA_BUFF_T    DATA[MAX_BUFF_LEN]; }DATAS_BUFF_T; static DATAS_BUFF_T   Buff0;    // 定义缓存 (2)初始化循环缓存: Buff0.readPos = 0; Buff0.writePos = 0; (3)判断缓存中是否有数据: BOOL HaveData_Buff(void) {     if (Buff0.readPos != Buff0.write.Pos)            return 1;        else            return 0;    } (4)向缓存中写数据: int WriteData(uint data) {     uint    nextPos;     nextPos = (Buff0.writePos + 1) % MAX_BUFF_LEN;     if (nectPos != Buff0.readPos)    // 判断缓存是否满,需要写入数据的位置等于读数据的位置时     {         Buff0.DATA[writePos].data = data;         Buff0.writePos = nextPos;         return 0;    //成功     }     else            return -1;    } (5)从缓存中读数据: uint ReadData(void) {     uint dataTemp;     if (HaveData_Buff() == 0)     {         printf("buffer is empty\n");         return -1;     }     dataTemp = Buff0.DATA[readPos].data;     Buff0.readPos = (Buff0.readPos + 1) % MAX_BUFF_LEN;     return dataTemp; }
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 教育专区 > 小学其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服