打印

菜单程序中的Initflag干什么用

[复制链接]
1038|2
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
yanse51|  楼主 | 2015-1-2 11:28 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
看到一个不错的程序。描述菜单蛮简洁。就是这个InitFlag=1. 不知做什么用。之前理解的是做LCD12864的刷新标志用。但是在子菜单里面。单纯的置为0. 并没有调用12864的刷新函数。那么是不是我理解错误了呢?
请多多指教

void (*Thrd)(void);

char InitFlag=1;

void keytoneset(void)
{
   if(initflag==1)
    {
      initflag=0;
    }
   if(key==key_none) return;
    switch(Key)
    {
       case KEY_EXIT:
         THRD=pROmAINKEY; //返回主界面
        InitFlag=1;
        break;
     default:
       break;
     }
}

void ProcMainKey(void)
{
  if(InitFlag==1)
   {
      InitFlag=0;
   }

   if(Key==KEY_NONE) RETURN;
  Swtich(key)
  {
    KEY1: tHRD=tIMEsET;
    iNITfLAG=1;
     BREAK;
   key2:
      Thrd=Dataset;
    initflag=1;
     break;
   key3:
      thrd=keytoneset;
    initflag=1;
     break;
  default: break;
  }
}

void main(void)
{
  Thrd=ProcMainKey;
  while(1)
  {
   Thrd();
   }
}


相关帖子

沙发
yanse51|  楼主 | 2015-1-4 21:52 | 只看该作者
咋没人说咧。这个东东到底是干什么的撒

使用特权

评论回复
板凳
airwill| | 2015-1-5 08:02 | 只看该作者
你光给出这段程序, 神仙也不知道它是干吗用呢!
你应该通观整个程序, 找到其他地方的对这个变量做响应的代码, 才能知道确切是干吗用的.

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

39

主题

88

帖子

0

粉丝