C有stackalloc函数吗?

sas*_*alm 11 c stack memory-management

是否在C中实现了stackalloc函数,允许您在堆栈上分配一个可变长度数组,如C#中的stackalloc

cni*_*tar 21

alloca,但它是非标准.此外,由于C99有一个称为"可变长度阵列"的功能.

int n;
scanf("%d", &n);
int v[n]; /* Will fail badly if n is large. */
Run Code Online (Sandbox Code Playgroud)

使用少量和小值VLAS可以相当不错.

  • @satuon不,Visual Studio对C99的支持非常有限. (2认同)

Woo*_*ass 5

alloca 有点像这样,但你需要非常小心地使用它.