temp.cpp(8) : error C2057: 应输入常量表达式 temp.cpp(8) : error C2466: 不能分配常量大小为 0 的数组

C++中出现的,不知错误点。以下是我的代码。
#include <iostream>
#include <iomanip>
#include <cmath>
using namespace std;
int main(){
int a,b,l,m,cnt,c=0,d=0,e=10,f=0,g;
cin>>l>>m;
int noip[l]={};
for(int i=0;i>m;i++){
cin>>a>>b;
for(int j=0;j!=l;j++){
if(j<a&&j<b){
j++;
noip[i]=j;
}
}
}
for(int c;c<l;c++){
for(int d;d<l;d==d){
g=f;
g%=e;
g-=f;
f==g;
g/=(e/10);
if(g%2==1){
cnt++;
}
}
}
cout<<cnt;
return 0;
}

求大神帮忙更改一下代码!!急!!

第1个回答  2019-07-09
第8行int noip[l]={};改成
int *noip = new int[l];
因为数组初始化长度必须用常量,所以这边改成指针就可以根据输入值来做动态长度的数组。至于你这个程序是要干嘛的我没全部看完,只是帮你改掉报错而已。本回答被网友采纳