delphi与C++Builder指针和数组转换

指针:

CBC:StartPt.x = (int)(StrToInt(mShape->Left)+i*StrToInt(mShape->Width)/Dots);

delphi:StartPt.x := trunc((mShape.Left)+i*(mShape.Width)/Dots);

 

另外看到人家这样:

BCB:         (TYourType*)Sender

delphi:   Sender   As   TYourType  

 

c++是这样的:  
        DWORD   dwSrc;  
        DWORD*   pDest;  
         
        ...  
        *pDest=dwSrc;

delhpi:

  var  
        dwSrc   :   DWord;  
        pDest   :   PDword;//或者pDest   :   ^Dword;//  
  ...  
        pDest:=@dwSrc;  

 

数组:BCB中int ID[10],ID有10个元素,从0到9,delphi中ID:array[0..9]of integer,ID有10个元素,从0到9,跟BCB是反着的,BCB用元素个数

 

表示,delphi用下标表示

BCB:

//波形参数
typedef struct
      {
    unsigned int  mDots;       //波形点数
    double  mDacclk;     //时钟
    double  mWaveData[2*262144]; //波形数据
    double  mNoise[2*262144];
    double  mGenWave[2*262144];
   }WavePara;

 

delphi:

//波形参数
type
  WavePara=record
    mDots:LongWord;       //波形点数
    mDacclk:Double;     //时钟
    mWaveData:array [0..2*262144-1]of double; //波形数据
    mNoise:array[0..2*262144-1]of double;
    mGenWave:array[0..2*262144-1]of double;
  end;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值