我正在编写练习有限状态机代码,我无法理解我的“Switch”和“if”语句的顺序(应该先出现)。
目前,我是这样写的:
task main()
{
// State variable default.
SystemStateType SystemState = State1;
While(1)
{
//Taken in from external sensors in real time
int reading;
if (reading == 0)
{
SystemState = State1;
}
else
{
SystemState = State2;
}
switch (SystemState)
{
case State1:
//actions
break;
case State2:
//other actions
break;
}
}
}
该代码旨在实时获取传感器数据并做出相应响应。我意识到这不是实际的功能代码,但我希望因为这个问题是理论上的,所以我当前显示的代码就足够了。如果我遗漏了什么,请告诉我。
谢谢!