标签: c gcc variable-length-array
GCC编译以下功能
void f(int i) { int a[i]; }
我的印象是你只能初始化长度恒定的数组。这应该编译,它会做我期望的吗?
答案 0 :(得分:2)
C99添加了可变长度数组。并且gcc将其添加到c89作为带-std=gnu89选项的扩展名(默认为gcc)。
gcc
-std=gnu89
在最新的C标准C11中,可变长度数组支持被标记为可选。
答案 1 :(得分:0)
在C99中允许使用VLA。 GCC扩展允许它以C89模式编译。