#include <iostream>
using namespace std;
int main(){
int n;
cout<<"Enter the size :";
cin>>n;
int array[n]; // I've worked some outputs and it works
return 0;
}
这是一种动态分配吗? 为什么它甚至没有给'n'作为“const”的错误?
此外,编写cout << array[n+5];
不会导致编译时或运行时错误。
我正在使用Dev-C ++。
答案 0 :(得分:3)
显然可以在C99中声明可变长度数组,看起来似乎是GCC accepts then for C++ also。
ISO C99允许使用可变长度自动数组,并且作为 扩展GCC在C90模式和C ++中接受它们。这些数组是 声明像任何其他自动数组,但长度是 不是一个持续的表达。
你每天都学到一些东西......我以前没见过。