为了账号安全,请及时绑定邮箱和手机立即绑定

“int size=10;”会产生一个常量表达式吗?

“int size=10;”会产生一个常量表达式吗?

C++ C
弑天下 2019-07-12 15:36:59
“int size=10;”会产生一个常量表达式吗?以下代码在GCC 4.8和Clang 3.2下编译:int main(){   int size = 10;   int arr[size];}8.3.4/1的C+标准指出,数组的大小必须是一个积分常量表达式,其中size似乎不是。这是两个编译器中的一个bug,还是我遗漏了什么?最新的VC+CTP拒绝使用以下有趣信息的代码:error C2466: cannot allocate an array of constant size 0有趣的是它似乎认为size是零。但至少它拒绝了代码。GCC和Clang不应该这样做吗?
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 530 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信