sample.c
来自「linuxFedure4环境下串口编程后台运行状态机」· C语言 代码 · 共 54 行
C
54 行
#include"fsm.h"#include<stdio.h>#include<stdlib.h>void wakeup(const unsigned char *none){ printf("i waked up.\n");}void eat(const unsigned char *food){ printf("i am eating some %s.\n", food);}void work(const unsigned char *job){ printf("i am working on some %s.\n", job);}void Sleep(const unsigned char *time){ printf("i am taking a %s sleep.\n", time);}struct func_table funcv[]={ {"wakeup", wakeup}, {"eat", eat}, {"work", work}, {"sleep", Sleep}};int main(){ struct FSM *fsm=NULL; fsm=fsm_load("sample.fsm", funcv, 4); if(fsm==NULL){ printf("load error\n"); exit(1); } fsm_doevent(fsm, "alarm"); fsm_doevent(fsm, "hungry"); fsm_doevent(fsm, "full"); fsm_doevent(fsm, "hungry"); fsm_doevent(fsm, "full"); fsm_doevent(fsm, "tired"); fsm_doevent(fsm, "alarm"); fsm_doevent(fsm, "hungry"); fsm_doevent(fsm, "tired"); fsm_free(fsm); return 0;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?