[Lazarus] Loading an integer into a byte array
Dave Coventry
dgcoventry at gmail.com
Thu Jan 8 15:46:09 CET 2009
Thanks Bernd.
Won't this mean a different file on big endian and little endian machines?
2009/1/8 Bernd Mueller <mueller.b at gmx.net>:
> Dave Coventry wrote:
>> I have a file into which I want to put a long integer:
>>
>> 00 00 19 7A
>>
>> The file expects the value in the form:
>>
>> buffer[0]:=122;
>> buffer[1]:=25;
>> buffer[2]:=0;
>> buffer[3]:=0;
>>
>> I am then intending to write this buffer to the file
>>
>> FS.Writebuffer(buffer,4);
>>
>> Is there a way of loading the buffer directly before writing?
>
> You could use the Absolute directive to map a longint variable to your
> buffer. Not pretty, but fast ;-)
>
> procedure LoadBuffer;
> var
> Buffer: Array[0..127] of Byte;
> l: Longint Absolute Buffer;
> begin
> l:= 6522;
> end;
>
> Regards, Bernd.
> _______________________________________________
> Lazarus mailing list
> Lazarus at lazarus.freepascal.org
> http://www.lazarus.freepascal.org/mailman/listinfo/lazarus
>
More information about the Lazarus
mailing list