[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