【发布时间】:2019-03-27 21:55:39
【问题描述】:
正如我在 c++ 中所知道的,如果你想创建一个数组,你必须为其大小提供常量值。但在这里:
int main(){
int a;
cin >> a;
int b[a] = {};
for (int i = 0; i<a ; i++){
b[i] = a;
cout << b[i];
}
return 0;
}
如果我输入 5
输出:
55555
它以我在 dev c++ 中无法理解的方式正常工作。如果我在 Visual Studio 2017 中运行它,它会出错。谁能解释一下为什么?
【问题讨论】:
-
可变长度数组不是标准的 C++,如果你可以使用它们,那么它们就是你正在使用的编译器的扩展。