const struct menu_stu_s
{
u8 menu_no;//菜单号
struct menu_stu_s *sub_stu_t;//子菜单ID
struct menu_stu_s *add_stu_t;//按上ID
struct menu_stu_s *dec_stu_t;//按下ID
void (*Subs_OK)();//OK子函数
void (*Subs_ADD)();//+子函数
void (*Subs_DEC)();//-子函数
void (*Subs_Add_L)();//长按+子函数
void (*Subs_Dec_L)();//长按-子函数
};
const struct menu_stu_s Sys_Menu[]=
{
。。。。。。。(数组附值)
};
struct menu_stu_s *p_menu=&(Sys_Menu[0]);
在函数中写入:
((*p_menu).Subs_OK)();
或
(Sys_Menu[0].Subs_OK)();
编译都通不过,missing prototype
改成:
(*p_menu).Subs_OK;
或
Sys_Menu[0].Subs_OK;
编译可以过,进不去其所指的函数,在函数里设置断点和死循环试过
请问这作何解释? |
|