要看你什什么格式的了
1.假设有四个字节,为整形,则:
var
iData: integer;
begin
Socket.ReadBuf( iData, 4 );
//不就行了么?
2.假设是一个记录:
var
rData: TRMyRecord;
begin
Socket.ReadBuf( rData, Sizeof( rData ) );
// 有问题么?
1.假设有四个字节,为整形,则:
var
iData: integer;
begin
Socket.ReadBuf( iData, 4 );
//不就行了么?
2.假设是一个记录:
var
rData: TRMyRecord;
begin
Socket.ReadBuf( rData, Sizeof( rData ) );
// 有问题么?
type
TPerson = record
case Integer of
0: (Buf: array[0..1023] of char);
1: (Name;array[0..31] of char;
Birth: TDateTime;
// other defines....
)
end;
在这个结构中,Buf与Name拥有相同的起始地址。
注意结构中不能含有指针类型。将结构定义调整好,就可以读入TA.Buf,而从TA.name、TA.Birth等变量读出,不需其他转换。