嵌入式每日学习心得2017.07.26

来源:互联网 发布:棋盘覆盖算法 编辑:程序博客网 时间:2024/06/05 08:42
队列:先进先出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

原创粉丝点击