小弟做一项目,把VC的代码改为DELPHI,,在VC中,有一函数声明为:void WINAPI DJConf_GetSysInfo(CONF_SYS_INFO *TmpCSI);//CONF_SYS_INFO 为结构类型,小弟已成功改好,如下:
type CONF_SYS_INFO_NEW=record
wCardNum                     :WORD;          wCardType                    :WORD;
end;问题1:
小弟要把这个函数改为DELPHI的形式:
procedure DJConf_GetSysInfoNew(这里该怎么写?);
问题2:
WORD类型可不可能进行算术运算,如m_nConfCount := ConfInfo.wCardNum*(64 div 3)*4;小弟在线等!当天结账!!!!

解决方案 »

  1.   

    type 
      PCONF_SYS_INFO_NEW = ^CONF_SYS_INFO_NEW;
      CONF_SYS_INFO_NEW=record
       wCardNum :WORD;
       wCardType:WORD;
    end;procedure DJConf_GetSysInfoNew(TmpCSI :PCONF_SYS_INFO_NEW);
      

  2.   

    WORD为16位无符号整型,取值范围为:0..65536
      

  3.   

    WORD类型可以进行算术运算,如m_nConfCount := ConfInfo.wCardNum*(64 div 3)*4是可以的。
      

  4.   

    procedure DJConf_GetSysInfoNew(var TmpCSI:CONF_SYS_INFO);stdcall;
      

  5.   

    真的很感谢各位,,谢谢!
    小弟在使用这个函数时同时也遇到麻烦,请大哥们再帮帮我我是这样用的,请大哥哥帮我看看,这样是否有什么潜在问题(我运行当然没问题,一切很好) 我说的潜在问题是指指针释放是否正确,还有,这段代码可以再优化吗?new(ConfInfo);
     DJConf_GetSysInfoNew(ConfInfo);
       m_nConfCount:=ConfInfo^.wCardNum ;
       dispose(ConfInfo);   m_nConfCount := ConfInfo^.wCardNum*(64 div 3)*4;