在vc6.0中测试
#include <stdio.h>
struct tst{ //定义菜单结构体
void (*p)();
struct tst *next;
};
void function1() //菜单动作
{
printf("this is function1
");
}
void function2()
{
printf("this is function2
");
}
struct tst trs(void (*function)(void),struct tst *hh) //菜单内容传递函数
{struct tst gg;
gg.next=hh;
gg.p=function;
return (gg);
}
void main()
{struct tst aa;
struct tst *s;
struct tst bb;
aa=trs(&function1,&bb);
bb=trs(&function2,&aa);
s=&aa;
(*s).p();
s=(*s).next;
(*s).p();
s=(*s).next;
(*s).p();
s=(*s).next;
(*s).p();
s=(*s).next;
(*s).p();
}
这是运行结果
(原文件名:菜单测试.png)
建议仔细挖掘~
一不小心小的状态机调度器/原则就诞生了~
鼓掌~
一周热门 更多>