Yorelee. 2022-09-09 11:38 采纳率: 100%
浏览 24
已结题

n是编译期常量吗? 函数中数组大小也一定是编译期常量吗?

函数中数组大小也一定是编译期常量吗?
void A(int n);
int main(void) {
    A(5);
}
void A(int n){
    int a[n];//没报错
}

n是编译期常量吗?

为什么不报错?

  • 写回答

3条回答 默认 最新

  • _GX_ 2022-09-09 13:25
    关注

    可变长数组(variable-length array)是C99引入的新语法。C++标准不支持。不过gcc, clang等编译器支持C99,因此不报错。
    详情请参考
    https://en.cppreference.com/w/c/language/array#Variable-length_arrays

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 9月17日
  • 已采纳回答 9月9日
  • 创建了问题 9月9日