yanse1214 发表于 2012-5-12 13:46:21

刷新显示缓冲区函数看不懂,求解释

                                    //请大虾指教一下,究竟代码什么个意思?
   void RefreshBuf(void)
    {
   if(bTime1S)//定时中断1S标志位。
   {
       bTime1S=0;//重新赋0
      if(++DisBuf==10)   //从这里开始,不懂了。
       {
          DisBuf=0;
      if(++DisBuf==6)
         {
          DisBuf=0;
         if(++DisBuf==10)
          {
          DisBuf=0;
         if(++DisBuf==6)
            {
             DisBuf=0;
             if(DisBuf<2)
            {
               if(++DisBuf==10)
               {
                  DisBuf=0;
                  DisBuf++;
               }
      }
            else
      {
if(++DisBuf==4)
               {
                  DisBuf=0;
                  DisBuf=0;
               }
                }
      }
             }
            }
       }
   }
}

ming180 发表于 2012-5-12 14:06:15

本帖最后由 ming180 于 2012-5-12 14:09 编辑

char DisBuf = {0, 0, ':' , 0, 0, ':' , 0, 0}; //可能不是':'
00:00:59 + 00:00:01 -> 00:01:00
00:59:00 + 00:01:00 -> 01:00:00
23:00:00 + 01:00:00 -> 00:00:00

yanse1214 发表于 2012-5-12 15:30:04

楼上是高手,能具体讲下不?

eduhf_123 发表于 2012-5-12 16:10:39

循环进位而已。
依次分别处理秒个位向秒十位、秒向分、分个位向分十位、分向小时、小时个位向小时十位的进位。
页: [1]
查看完整版本: 刷新显示缓冲区函数看不懂,求解释