嵌入式每日学习心得2017.07.26

本文详细介绍了队列的基本概念及其数据模型,包括先进先出(FIFO)原则,并探讨了队列操作如初始化、进队、出队等。特别地,文章针对“假满”问题提出了循环队列解决方案,并解释了其核心判断条件。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

队列:先进先出FIFO
数据模型:
struct queue
{
数据容器[队列长度];
rear;//队尾
front;//队头
};
功能:
1、初始化initQueue()
2、进队  EnQueue()
3、出队  DeQueue()
4、判断队为空 isEmpty()
5、判断队为满 isFull()
6、判断队列长度 QueueLenth()
7、清空队列     ClearQueue()


假满:由于通过rear指向尾处来进行判断是否为满,一当有队头元素出队时,队列不再为满。
if(rear==MAXSIZE-1)
if(front==rear)


解决方法:循环队列 
 核心:满:(rear+1)%MAXSIZE==front
       空:front==rear
       队长:(rear-fornt+MAXSIZE)%MAXSIZE


嵌套结构体
大体与构体相似,并需要嵌套调用
struct a
{
d...
};
struct b
{
struct a c
...
};
b.c.d

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值