我的代码包含以下行:
int counts[config.max_c];
我很惊讶地看到它使用gcc
没有任何标志的默认编译没有问题。根据man gcc
c 代码的默认标准是gnu89
. 该标准是否支持这种类型的数组初始化,如果支持,我在哪里可以找到参考?
我的代码包含以下行:
int counts[config.max_c];
我很惊讶地看到它使用gcc
没有任何标志的默认编译没有问题。根据man gcc
c 代码的默认标准是gnu89
. 该标准是否支持这种类型的数组初始化,如果支持,我在哪里可以找到参考?
该标准是否支持这种类型的数组初始化,如果支持,我在哪里可以找到参考?
不,它不支持可变长度数组。
ISO C99 允许可变长度自动数组,并作为扩展 GCC。
尽管您在 C89 中编译代码,但由于 GCC 扩展,它编译时不会出错。