紧急提问,为什么我的Dev c++允许使用变量作为数组长度,这种现象正常么?新标准?

dev c++5.11

#include <iostream>
using namespace std;
int main(){
    int n;
    cin>>n;
    int d[n];
    for(int i=0;i<n;i++){
        cin>>d[i];
    }
    for(int i=0;i<n;i++){
        cout<<d[i];
    }
    return 0;
}

图片说明

是的,gcc支持,vc++不支持

编译器版本的问题,不过为了代码通用性,使用变量创建数组最好还是采用动态创建的方式:int* arr=new int[n];