On Monday 17 March 2008 06:40:51 Jonas Maebe wrote:
> On 17 Mar 2008, at 12:34, [EMAIL PROTECTED] wrote:
> > Is the use of the move procedure right? The array length is
> > Maximum-1. When I
> > put this length on value[1], the last entry value[Maximum-1] would
> > be deleted
> > or would be shifted in an different memory area?
>
> It would overwrite whatever is placed in memory after the array
> (which, in case there is nothing, indeed causes an access violation).
> Use this instead:
> move(values[0],values[1],(Maximum-1)*sizeof(single));
> values[0]:=sameothervalue;
Wouldn't it be better to use the length function on the array? Or does that
not work in some compiler modes?
move(values[0], values[1], (length(values)-1) * sizeof(single));
If the size of the array is ever changed, no code change is required.
Best regards,
Pete C.
_______________________________________________
fpc-pascal maillist - [email protected]
http://lists.freepascal.org/mailman/listinfo/fpc-pascal