如果在特定函数中多次调用alloca()函数,是否可以保证由它分配的所有堆栈段完全形成堆栈内存的连续部分?
解决方法:
is it guaranteed that all the stack segments allocated by it form a contiguous part of stack memory altogether?
不.如果有保证,您可以在其文档中阅读所有相关内容. alloca是一个实现定义的函数(唯一可以告诉你对它有什么保证的是编译器的实现者).
它也是非标准的,不安全的和不可移植的(基本上比使用malloc和C中的free更差).
除非您想知道遗留代码(使用它)的行为方式,否则您只能通过使用它来获得代码质量.