有没有一种方法可以在不调用malloc的情况下从堆中分配内存?以下电话可以对它有效吗?
void* loc = (void*) &heap[end_of_heap];
Run Code Online (Sandbox Code Playgroud)
不,C语言本身不提供此类功能.如果您只关心Unix系统符合旧版Unix标准(SUSv2或更早版本,如果我没记错的话)的弃用特性,那么这些brk和sbrk函数提供了这一功能.但是你真的不应该使用它,除非你编写的是非常低级的代码,永远不需要是可移植的.