关于生成树协议(STP协议)状态机

本文探讨了生成树协议(STP)中状态机的设计原理,包括现态、条件、动作和次态四个关键部分。首先介绍了如何构建状态机结构体,接着详细阐述了封装状态机函数的过程,包括创建初始状态机和状态机链表。在C语言环境中,利用宏展开技术连接字符串。最后,通过实例展示了状态机如何根据条件进行状态转移并执行相应动作。
摘要由CSDN通过智能技术生成

状态机一般都有4个重要部分:

1)现态:表示当前处于的状态

2)条件:也可称为事件,表示当具备的条件达到,可从当前状态 转移到其他状态

3)动作:表示条件满足后执行的动作,(注明:可以条件满足 没有执行动作,直接转移到其他状态)

4)次态:表示条件满足后达到的新状态,当到达新的状态,则变成了现态

对于状态机设计

第一步:可先构建状态机结构体

主要包含成员:下一状态机;当前状态;状态变化标志;进入某状态后的执行动作;检查状态转移条件;状态机所属的主体对象

例如:

第二步:封装  创建状态机函数( 也包含两个:一个是创建一个初始状态的状态机;第二是将状态机链成链表)

             主要包括:为状态机运行 申请内存空间;关联进入新的状态、状态转移条件、状态名称

    然后创建统一的状态机 链表

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值