在看程序时看到这么一段
t_update:=(cardinal(ui.m_update_time[1]))+
          (cardinal(ui.m_update_time[2]))*256+
          (cardinal(ui.m_update_time[3]))*256*256+
          (cardinal(ui.m_update_time[4]))*256*256*256+
          3600*8
什么意思,这么多256乘着?

解决方案 »

  1.   

    其实就是做的移位操作,乘一个256就是左移8位,即shl 8
    他要实现的功能应该是将4个8位的数组成一个32数。
      

  2.   

    是移位运算。
    time[2]左移8位。
    time[3]左移16位。
    time[4]左移24位。
      

  3.   

    killazy() ( ) 信誉:100  2005-04-14 11:22:00  得分: 0 
     
       那最后的3600×8那??
    -------------------------
    这个程序看来是记录时间的,是不是计算小时阿,一小时=60分钟
    一分钟=60秒,,,,一小时=3600秒  
     
      

  4.   

    delphi不是有直接移位的  为什么要用这种方法来移位
      

  5.   

    >> sky2050(不会游的鱼) ( ) 信誉:100  2005-04-14 13:48:00  得分: 0    
    >>   delphi不是有直接移位的  为什么要用这种方法来移位这应该要问写这段代码的人。
    不过看代码差不多可以理解为是从VB之类的代码翻译过来的。