FIFO为空时,不能执行读操作
FIFO为满时,不能执行写操作
rd < wr
【资料图】
rd > wr
/**Copyright(C),2010-2023,CSDN@whik1194*Time:2023年4月9日*Author:https://blog.csdn.net/whik1194*GitHub:https://gitee.com/whik/xqueue*/#ifndef__XQUEUE_H__#define__XQUEUE_H__#include"stdint.h"/*FIFO数据的类型,可以是结构体类型*/#defineqdata_tuint8_t/*FIFO长度,实际存放的数据=FIFO_SIZE-1*/#defineFIFO_SIZE6typedefenum{QUEUE_OK,QUEUE_FULL,QUEUE_EMPTY}qstatus_t;typedefstruct{uint16_taddr_wr;/*写地址*/uint16_taddr_rd;/*读地址*/uint16_tlength;/*FIFO长度,实际存放的数据=length-1*/qdata_tfifo[FIFO_SIZE];}queue_t;qstatus_tqueue_reset(queue_t*q);qstatus_tqueue_read(queue_t*q,qdata_t*pdata);qstatus_tqueue_write(queue_t*q,qdata_tdata);intqueue_isFull(queue_t*q);intqueue_isEmpty(queue_t*q);intqueue_print(queue_t*q);#endif
xqueue.c文件
/**Copyright(C),2010-2023,CSDN@whik1194*Time:2023年4月9日*Author:https://blog.csdn.net/whik1194*GitHub:https://gitee.com/whik/xqueue*/#include"xqueue.h"#include"stdio.h"/*FIFO复位*/qstatus_tqueue_reset(queue_t*q){inti=0;q->addr_wr=0;q->addr_rd=0;q->length=FIFO_SIZE;for(i=0;i
length;i++)q->fifo[i]=0;returnQUEUE_OK;}/*FIFO写入数据*/qstatus_tqueue_write(queue_t*q,qdata_tdata){if(queue_isFull(q)){printf("Writefailed(%d),queueisfull\n",data);returnQUEUE_FULL;}q->fifo[q->addr_wr]=data;q->addr_wr=(q->addr_wr+1)%q->length;printf("writesuccess:%02d\n",data);queue_print(q);returnQUEUE_OK;}/*FIFO读出数据*/qstatus_tqueue_read(queue_t*q,qdata_t*pdata){if(queue_isEmpty(q)){printf("Readfailed,queueisempty\n");returnQUEUE_EMPTY;}*pdata=q->fifo[q->addr_rd];q->addr_rd=(q->addr_rd+1)%q->length;printf("readsuccess:%02d\n",*pdata);queue_print(q);returnQUEUE_OK;}/*FIFO是否为空*/intqueue_isEmpty(queue_t*q){return(q->addr_wr==q->addr_rd);}/*FIFO是否为满*/intqueue_isFull(queue_t*q){return((q->addr_wr+1)%q->length==q->addr_rd);}/*FIFO内数据的个数*/intqueue_count(queue_t*q){if(q->addr_rd<=q->addr_wr)return(q->addr_wr-q->addr_rd);//addr_rd>addr_wr;return(q->length+q->addr_wr-q->addr_rd);}/*打印当前FIFO内的数据和读写指针的位置*/intqueue_print(queue_t*q){inti=0;intj=0;for(i=0;i addr_rd;i++)printf("");printf("rd=%d",q->addr_rd);printf("\n");for(i=0;i length;i++){if(q->addr_wr>q->addr_rd){if(i>=q->addr_rd&&i addr_wr)printf("[%02d]",q->fifo[i]);elseprintf("[]");}else//addr_rd>addr_wr{if(i addr_wr||i>=q->addr_rd)printf("[%02d]",q->fifo[i]);elseprintf("[]");}}printf("------count=%d\n",queue_count(q));for(i=0;i addr_wr;i++)printf("");printf("wr=%d",q->addr_wr);printf("\n");returnQUEUE_OK;}
实际应用:
/**Copyright(C),2010-2023,CSDN@whik1194*Time:2023年4月9日*Author:https://blog.csdn.net/whik1194*GitHub:https://github.com/whik/xqueue*/#include
#include #include"xqueue.h"intmain(intargc,char*argv[]){queue_tqueue;qdata_tdata;queue_reset(&queue);queue_write(&queue,1);queue_write(&queue,2);queue_write(&queue,3);queue_read(&queue,&data);queue_read(&queue,&data);queue_write(&queue,4);queue_write(&queue,5);queue_write(&queue,6);queue_write(&queue,7);queue_read(&queue,&data);queue_read(&queue,&data);queue_read(&queue,&data);queue_write(&queue,8);queue_write(&queue,9);queue_write(&queue,10);queue_read(&queue,&data);system("pause");return0;}
运行结果:
https://gitee.com/whik/xqueue
标签:
最新推荐
一、为什么需要FIFO?FIFO是First-InFirst-Out的缩写,它是一个具有先入先出特点的缓冲区。可以理解成一...
中信银行(00998 HK)发布公告,中信有限将向中国中信金融控股有限公司(中信金控)无偿划转其持有的该行A...
中信证券:当前市场处于全年第二个关键的做多窗口,经济从局部复苏到全面修复只是时间问题,随着全球流...
中央纪委国家监委网站讯 据宁夏回族自治区纪委监委消息:宁夏回族自治区高级人民法院原党组成员、执行...
在苏州会展建设中,必须选择一家好公司,这是至关重要的,如果我们选择企业错误,会导致整个会展建设失...
笔记本cpu温度多少正常?笔记本cpu温度一般情况下最高不要超过85度, ">
央视网消息(新闻联播):全面贯彻党的二十大精神和全国两会精神,天津市实施制造业高质量发展行动,不...
今年以来,SaaS(SoftwareasaService,软件运营服务)行业多家公司估值缩水、IPO进程受挫,北森控股在港交...
4月10日,泰国公共卫生部就该国登革热情况发布报告称,2023年1月1日至4月5日期间,泰国登革热确诊病例达到1 439
【长话短说】上市3个月,变更调减IPO募投项目资金用途被问询。百利天恒2022年账面利润为-2 91亿元,目...
马龙对决林昀儒,陈梦迎战石川佳纯,11日直播9场比赛(附赛程),陈梦,林昀儒,王曼昱,石川佳纯,伊藤美诚,...
2023年4月10日山西省土豆批发市场价格最新行情监测显示:2023年4月10日山西省土豆批发价格均价3 1元 ...
中新社上海7月3日电(记者姜煜)“中国是机遇之地,通用汽车的发展就是有力的证明。我们将持续探索新机遇...
4月9日,回到家乡的洛阳籍英雄航天员陈冬,专程前往栾川县特殊职业学校,与牵挂已久的“冰雪小将”及该...
1、《摩罗丹质量标准及其检测方法》是邯郸制药股份有限公司于2007年8月27日申请的发明专利,该专利的申...
4月10日,生意社丁腈橡胶基准价为15625 00元 吨,与本月初(15850 00元 吨)相比,下降了-1 42%。本...
各景点五一活动:点击查看各景点游玩攻略(点击各个景区名字即可跳转详情)灵山拈花湾鼋头渚融创乐园融...
据中国报告大厅对2023年4月9日山东省液体二氧化碳价格最新走势监测显示:2023年4月9日山东省液体二氧化碳(99 9
《港湾商业观察》施子夫 当“乔丹跑鞋”变成“中乔跑鞋”,这个被外界熟知的与篮球运动员迈克尔乔丹同名...
1、小区物业主要干什么?物业服务主要内容是物业区域内业主共有部分的物业,业主专有部分如需要物业企业...
乐居财经王敏4月10日,据上清所,上海北方企业(集团)有限公司发布2022年度第三期超短期融资券兑付公告。...
【绝活看点】何涛:国网重庆永川供电公司输变电运检中心智能巡检班无人机首席工程师。他利用业余时间研...
搭好美育教育阵地。开齐开足音乐、美术等基础课程,依托课后服务平台,开设舞蹈、器乐、曲艺、书法、剪...
NBA常规赛大结局:勇士首轮战国王,湖人附加赛对决森林狼,湖人,勇士队,nba常规赛,菲尼克斯太阳队,明尼苏...
1、能读懂这些,都是有故事的人有些事,我们明知道是错的,也要去坚持,因为不甘心;有些人,我们明知道...
今日晚间,360官方宣布,4月16日,基于360GPT大模型开发的人工智能产品矩阵“360智脑”率先落地搜索场景...
如帮助杨广夺嫡的主要功臣杨素的弟弟杨约就很好地利用了这一点,他在给杨素献夺嫡之策时就明确表示杨广...
据了解,特斯拉储能超级工厂将规划生产特斯拉超大型商用储能电池(Megapack),初期规划年产商用储能电...
干净,是一种生活态度,亦是一种可贵的品质。喜欢干净的人,无论从外在形象,到内在修养,都对自己有一...
送一些比较特殊的东西,比如定制的打火机、打火机、钱夹、数码产品等。如果是普通朋友,送个生日蛋糕或...
对于喜爱穿搭的朋友来讲帽子是一年四季中都不可缺少的单品之一,这不因为近期气温骤降。帽子更是成了出...
隆鼻和双眼皮手术都是常见的整容手术,隆鼻可让面部比例更协调,而双眼皮则能让眼睛更加媚眼。那么,是...
“守的是碑,传承的是精神!我们一定会将英烈精神和您的守碑故事永远传承下去。”近日,一场庄严的“守...
韩联社:朝鲜已连续两天未接听首尔通过韩朝线路拨打的电话,朝鲜,韩国,平壤,韩联社,金正恩,首尔特别市
“该平台兼顾横置、纵置两大构型,由混动变速器、混动发动机、智能电驱和安全电池四大核心系统及智慧能...
1、军舰鸟是鹈形目,军舰鸟科鸟类的统称。2、是一种大型热带海鸟,全世界目前已知的有五种,主要生活在太...
纵览客户端讯(燕赵都市报纵览新闻记者庞永力通讯员陈志国王欣欣)4月8日上午,第27届中国(胜芳)特色...
4月8日,记者从国家移民管理局广西出入境边防检查总站了解到,防城港边境管理支队日前捣毁了一个特大跨...
云梦盛砦村:治理“围村港”,打造靓丽水系景观---随着群众生活水平提高及对美好环境的追求,村民强烈要...
【岛内关注解放军3天“环台军演”】两岸一起见证祖国强大多好,祖国统一,势不可挡!对于台湾来讲只有回...
1、五味子泡水有补肾宁心、益气生津、固表止汗等功效。2、五味子味甘酸,性温,这种五味俱全、五行相生...
1、STEAM这个是老问题了一个字等。2、或者进离线模式改下下载用服务器换一组。3、有可能会好点或者是删
河南日报记者郭北晨为加快建立租购并举的住房制度,重点保障刚性及改善性住房需求,4月7日,郑州住房公...
三个信号落地,下周的股市或有意外,笔者的思路是,三大指数可能在场外资金谨慎时期,开始了意外的快速...
4月7日,福州海事局发布航行警告,4月8日0800-1200时、11日0800-1200时、13日0800-1200时、
5朵金花又一次同场竞技,她们5人被分在了4个小半区,球迷又有机会看到半决赛国乒内斗了。萨马拉则是在新...
山东章鼓于2023年4月8日披露年报,公司2022年实现营业总收入18 75亿元,同比增长10 5%;实现归母净利...
点蓝字关注,不迷路~4月7日,A股市场整体上涨。截至收盘,上证指数收报3327 65点,上涨0 45%,深证成指收报11
格隆汇4月7日丨甘化科工(000576 SZ)公布2022年年度报告,报告期实现营业收入4 45亿元,同比下降17 46
大家好该疫情数据更新统计周期为昨日0时起至24时,非今日实时数据,数据来源于百度疫情,根据疫情实时追...
成都抗疫的外籍志愿者:愿为城市“康复”贡献力量
天天速递!欢乐与深刻:李佳航获上汽大众威然之夜第三届斑彩螺奖最佳男主
甘肃陇东基地直流配套一期100万千瓦外送项目330千伏送出工程初步设计获批复
天天最新:李蓓:曾建议一家地产公司董事长收缩业务,他没听,后来暴雷了
全球今亮点!「立方早知道」中原银行董事长徐诺金辞职/郑州比亚迪首车下线/爆雷房企被迫退市第一单
易方达中证绿色电力交易型开放式指数证券投资基金上市交易公告书提示性公告
美股异动 | 和黄医药(HCM.US)涨超12% 总市值超24.5亿美元|每日速讯
马克龙热情得让黄渤都害羞了!穿西装帅气爆表,巩俐在台下笑开花
焦点消息!西安“牛血王”覆灭记:强买强卖垄断市场,血豆腐价格4年涨3倍
鼎尚电子聘任沈继红为公司财务负责人 2022年上半年公司净利114.45万|今日热搜
明朝的“两厂一卫”分别是什么时间设立,设立的原因又是什么呢?|环球观察
老人2800卖老照片女生感动险上当 网友:利用人的善心最可恶
工商银行步步高升金条50g价格今天多少一克(2023年04月06日)
世界今日讯!专访商丘市中医院党委书记、院长王雷—— “中西医并重打造有温度的医院”
华硕M4A77最高支持什么cpu(华硕m4a77) 全球今热点
焦点速讯:EA才是两大主机平台玩家数最多的厂商 而非动视暴雪
Copyright © 2015-2022 欧洲律师网版权所有 备案号:沪ICP备2022005074号-23 联系邮箱: 58 55 97 3@qq.com