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 + -
显示快捷键?