关于动态数组,初级用户老是迷惑,
传递参数是老是不正确,
主要还有指针的迷惑:
如有记录型:
TDeviceStatus = record
Device_ID : Integer;
DeviceStatus : array [0..11] of Char;
end;
// one dimensional dynamic array of device
TDvcStsGroup = array of TDeviceStatus;
用时候
var
DeviceStatus:TDeviceStatus
DvcStsGroup :TDvcStsGroup;
Begin
SetLength(DvcStsGroup,5)
TidTcpClient.WriteBuffer(DvcStsGroup,SizeOf(DeviceStatus)*5);
End;
这么用可是出错,实际上根本发不出,
该如何取得这块内存呢?
也就收和发如何写呢?
传递参数是老是不正确,
主要还有指针的迷惑:
如有记录型:
TDeviceStatus = record
Device_ID : Integer;
DeviceStatus : array [0..11] of Char;
end;
// one dimensional dynamic array of device
TDvcStsGroup = array of TDeviceStatus;
用时候
var
DeviceStatus:TDeviceStatus
DvcStsGroup :TDvcStsGroup;
Begin
SetLength(DvcStsGroup,5)
TidTcpClient.WriteBuffer(DvcStsGroup,SizeOf(DeviceStatus)*5);
End;
这么用可是出错,实际上根本发不出,
该如何取得这块内存呢?
也就收和发如何写呢?
解决方案 »
- 如何判断控制面板-管理工具-服务中有没有某个服务?delphi
- Pchar的概念
- 怎样使两个flash动画同时播放?
- Delphi如何连接MySQL(老问题了)(非ODBC连接)
- 在MDI中,一个子窗口如何得到Frame窗口的句柄.
- 请问,怎样在线程中调用COM?!
- 三层架构,使用不同控件的区别:TQuery+TSession+TDataBase跟TADOConnection+TADOQuery?
- 一个应届毕业生的困惑...
- 100分求高手解答,来者有分。怎样才可以取消Delphi自动提交的动作。
- 如何做一个TImage中图片的镜像?
- 关于登录的问题
- 怎样实现像FlashGet那样,一点网页一个连接就能激活我的应用程序并且能获得URL地址
请问,这DvcStsGroup[0]的内部是怎样的呢,
能否给剖析下。
WriteBuffe需要的是一个无类型的常量,这怎么和DvcStsGroup[0]匹配呢?