Page 1 of 1

Posted: Wed May 08, 2002 12:00 pm
by BackupUser
Restored from previous forum. Originally posted by PB.

I don't anything about how the Dim command works, with regard to memory use,
so can someone please explain this for me: If I have these three lines of code,
how much memory is used by declaring them? Any memory, or are they not used
until their contents are actually filled with variables?

Dim one$(999)
Dim two$(999)
Dim three$(999)


PB - Registered PureBasic Coder

Posted: Wed May 08, 2002 10:13 pm
by BackupUser
Restored from previous forum. Originally posted by tinman.
I don't anything about how the Dim command works, with regard to memory use,
so can someone please explain this for me: If I have these three lines of code,
how much memory is used by declaring them? Any memory, or are they not used
until their contents are actually filled with variables?

Dim one$(999)
Dim two$(999)
Dim three$(999)
Arrays of strings are a bit different since you not only have the array memory, you have the string memory.

However, your basic array (4 bytes for a string pointer * 1000 elements) will be allocated as soon as you call the Dim command. AFAIK PB does not support dynamic arrays, unless you manually code that.

For a string array, each pointer will be NULL to start with and then memory is allocated for the string when you assign it a value.

I'm sure there's a 3rd party lib which has commands for getting the amount of free memory - you could always open a console window and print the free memory as you go.


--
It's not minimalist - I'm increasing efficiency by reducing input effort.