• 大小: 0.03M
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-03-27
  • 语言: C/C++
  • 标签: c  

资源简介


C状态机,switch-case版;C状态机,查表法。

资源截图

代码片段和文件信息

#include 
#include 


//recorder 

enum state { s_stop s_play s_forward s_backward s_pause s_record  };
enum message { play stop forward backward record pause };


void state_change(enum message m)
{
 static enum state s=s_stop;
 switch (s)
 {
case s_play:
     if(m==stop)
       {
s = s_stop;
    printf(“stop.\n“);        
       }
       else if (m==pause)
       {
            s = s_pause;
printf(“pause“);
       }
       break;
case s_pause:
if(m==pause)
{
s = s_play;
printf(“play.\n“);        
}
else if(m==stop)
{
s = s_stop;
printf(“stop.\n“);        
}
break;
    case s_stop:
if(m==play)
{
s = s_play;
printf(“play.\n“);        
}
if(m==backward)
{
s = s_backward;
printf(“backward.\n“);        
}
if(m==forward)
{
s = s_forward;
printf(“forward.\n“);        
}
if(m==record)
{
s = s_record;
printf(“record.\n“);      

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件        1884  2014-06-21 00:10  state.c
     文件         487  2014-06-29 19:47  state.dot
     文件       36578  2014-06-29 19:52  state.jpg
     文件        3236  2014-06-21 00:09  state_engine.c
     文件           8  2014-06-21 00:09  test.in

评论

共有 条评论