alloca()
weist Speicher auf dem Stack und nicht auf dem Heap zu, wie im Fall von malloc()
. Wenn ich also aus der Routine zurückkehre, wird der Speicher wieder freigegeben. Damit ist mein Problem, dynamisch zugewiesenen Speicher freizugeben, eigentlich gelöst. Freigeben von Speicher, der durch malloc()
bereitet viel Kopfzerbrechen und führt, wenn man es versäumt, zu allen möglichen Gedächtnisproblemen.
Warum ist die Verwendung von alloca()
trotz der oben genannten Merkmale entmutigt?