作者:曾Jerry 或 大橙员, 250359225@qq.com
如果1个switch有多个case,或是有多个if-else语句,不利于程序的阅读和扩展。改进方法可以使用函数指针数组, 有人也叫表驱动法。
switch
我们先来看看1个switch的例程:
typedef enum {
E_IDLE = 0,
E_SYNC,
E_DETECT_FAULT,
E_FEEDBACK_FAULT
} Enum_State;
static Enum_State eState = E_IDLE;
static void APP_Idle(void); /* 省略了函数具体实现的功能 */
static void APP_Sync(void);
static void APP_DetectLedFault(void);
static void APP_FeedbackFault(void);
void main(void)
{
for(