[fpc-pascal] initializing pointer values
dhkblaszyk at zeelandnet.nl
dhkblaszyk at zeelandnet.nl
Fri Dec 16 10:21:30 CET 2011
On 16 dec '11, Michael Van Canneyt wrote:
> On Fri, 16 Dec 2011,
dhkblaszyk at zeelandnet.nl [1]wrote:
>
>> On implementing a linked list I
hit to some unexpected (doesn't mean incorrect though) behaviour. ptest
= ^test; test = record p: pointer; end; new(mytest); When I allocate
"mytest" the pointer variable "p" is initialized as $ffffffff instead of
nil as I did suspect. In my code though I am relying on the fact that
new pointers are indeed nil so I can allocate them accordingly. How can
I force and rely on the fact that p is always nil? What is the correct
procedure here?
>
> Newly allocated memory is never zeroed out. You
must do this manually with FillChar or FillWord.
> This is only done
automatically for class instances.
>
> I will add a note to the docs.
>
> Michael.
I wasn't sure about this, but now I know.
Thanks Michael.
Links:
------
[1] mailto:dhkblaszyk at zeelandnet.nl
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-pascal/attachments/20111216/173d2864/attachment.html>
More information about the fpc-pascal
mailing list