Thanks Marco, I'll try that.
On 7 July 2012 09:43, Marco van de Voort <[email protected]> wrote: > In our previous episode, Dave Coventry said: >> I have the following C code which I'm trying to emulate in Pascal: >> >> seqence_crc = *((int64_t*)data); >> seqence_key = *((int64_t*)&data[8]); >> compr_crc = *((int64_t*)&data[16]); >> compr_len = *((int32_t*)&data[24]); >> >> Currently, I'm doing it manually, but I'm not getting the results I'm >> expecting. > > This assumes data is a pbyte or pchar (char * or byte *) > > then & translates to @, and int64_t* to pint64 the first * changes to ^ at > the end: > > seqence_crc:=pint64(data)^; > seqence_key:=pint64(@data[8])^; > compr_crc:=pint64(@data[16])^; > compr_len:=pint64(@data[24])^; > >> I'm pretty sure there is a way of doing this natively, but I can't >> seem to find it. > > It's 1:1 translatable. Note the absence of @ and & in the first line though, > that is on purpose. (in both fragments) > > -- > _______________________________________________ > Lazarus mailing list > [email protected] > http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- _______________________________________________ Lazarus mailing list [email protected] http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
