我正在修改C并遇到了alloca/free函数,这些函数被描述为像空间一样在堆栈上分配存储.与malloc/free相同吗?或者这是不同的东西?谢谢.
Dav*_*nan 22
我认为你的意思alloca是用于在堆栈上分配内存.是的,这是从不同的malloc和free它在堆上分配.
不要尝试释放分配的内存,alloca因为当调用的函数alloca返回其调用者时,它会自动释放.
使用alloca和/或C99可变长度数组可能是一项有风险的业务,因为如果您使用这些工具,您可能会很容易地溢出堆栈.