Q: Why alloca() should be used carefully?
A: Many compilers support alloca() as an extension to the C language. This
function allocates storage from the stack, like any declared variable would.
Since the storage is allocated on the stack, it need not be freed, as the
stack is restored upon the function return.
Some operating systems support automatic stack expansion and stack checking,
while others -- VxWorks, for example -- do not. In some applications,
predictable throghput and stack usage can be very important. Use malloc()
and free() storage allocation and deallocation, if necessary.
               (
geocities.com/vijoeyz/faq)                   (
geocities.com/vijoeyz)