Problem with adding strings
program t;
{$APPTYPE CONSOLE}
uses
{$IFNDEF FPC}System.{$ENDIF}SysUtils;
procedure GetKey(zone: Pointer; key: Pointer);
begin
Move(zone^, key^, 6);
end;
var
i: Integer;
zone: RawByteString;
data: RawByteString;
keya: RawByteString;
begin
SetLength(keya, 6);
data := '';
for i := 0 to 2 do begin
case i of
0: zone := '123456';
1: zone := 'abcdef';
2: zone := '654321';
end;
GetKey(@zone[1], @keya[1]);
data := data + keya;
end;
WriteLn(data);
end.
The result should be '123456abcdef654321' not 'abcdefabcdef654321'.
Edited by idigger