这个简单的If-Statement有什么作用?

时间:2013-09-07 19:45:49

标签: c if-statement

我不是程序员(开始学习Python)。

请帮我理解这个伪代码:

     {
  if ( !*(sub_676578() + 2644) )
  {
    EnterCriticalSection(&CriticalSection);
    ++dw_FrameCounter;
    if ( !b_AnimFlag )
    {
      if ( !b_PauseFlag )
      {
        dw_TFraction += 1092;
        if ( dw_TFraction >> 16 )
        {
          ++dw_TSeconds;
          dw_TFraction = dw_TFraction;
        }
        dw_CDFraction += 1092;
        if ( dw_CDFraction >> 16 )
        {
          if ( b_TimerDirection & 2 )
          {
            ++dw_CDSeconds;
          }
          else
          {
            if ( dw_CDSeconds )
              --dw_CDSeconds;
          }
          dw_CDFraction = dw_CDFraction;
        }
      }
    }
    LeaveCriticalSection(&CriticalSection);
  }
}

我特别不理解'IF'行。 我也不明白为什么dword_DC08C0 = dword_DC08C0;存在

编辑:如果您希望看到整个功能,请访问:http://pastie.org/8306763

1 个答案:

答案 0 :(得分:4)

此代码可以转换为更易于阅读的形式:

if ( byte_DC0E70 == 0 )
{
   dword_DC08C0 += 1092;
   if ( ( dword_DC08C0 / 65536 ) != 0 )
   {
      dword_DC08B8 += 1;
      dword_DC08C0 = dword_DC08C0;
   }   
}

由于缺乏任何背景,进一步的解释会变得复杂。