At 01:24 morn 10/1/02 -0700, Satya wrote:
malloc you
allocate /limited/ memory too. There is /no/ way to prevent you
from overflowing an allocated buffer if you so wish.
I guess I should say that dynamic memory allocation, by definition, allows
you to allocate as much memory as you need at runtime.
which is irrelevant. What makes you /not/ to define a array sufficiently
large as per your needs before hand? In both cases someone who does /not/
heed your needs [or simply is trying to be bad] may pour in more data then
there is space available for. Malloc does not have a predictive logic
built into it by which it keeps up with the memory requirements. It just
allocates what you as it to. The mechanism has to be provided by the
program logic, which was the point of the last communique.
>[..C for
dummies example]
Haven't read that. It's a fairly obvious example.
I was not alluding to any book.
inefficient.
Someone else can have a say on this maybe. For truly
flexible storage a linked lists of buffers may be more the way to go.
Like for a text editor? Yeah, and you're still mallocing the structs.
You have very /conveniently/ snipped off portions which state the same
thing. There was a line above - "Malloc allows you to have sophisticated
mechanisms where you may limit size of buffer to only the size of free
memory available from the OS." Malloc is a standard function for
allocating memory dynamically. But it by itself does /not/ solve the
overflow problem - which is what you insinuated. One has to have a
mechanism for having a truly flexible input buffer. And the one I
mentioned may not be a good method - it was just a method to support a point.
quasi