如何修复 C++ 中所需的常量表达式?

how to fix constant expression required in C++?

我尝试创建一个 table,其中包含用户选择的数字,但它给了我一个错误:

constant expression required

#include <iostream.h>
#include <conio.h>
main(){
clrscr();
int i,k,nval,pos=0,neg=0;
cout<<"Entrer Le nombre de valeur que vous voulez saisir nval = ";
cin>>nval;
int tab[nval];
for (i=0; i<nval; i++){
k=i+1;
cout<<"Le nombre la valeur numeros = "<<k<<"= ";
cin>>tab[i];
if (tab[i]>0) pos+=1;
else if (tab[i]<0) neg+=1;
}
cout<<"Le nombre des valeurs positives = "<<pos<<endl;
cout<<"Le nombre des valeurs negatives = "<<neg;
getch();
return 0;
}

是否有任何站点可以直接尝试 C++ 代码?

您不能创建编译时大小未知的数组。您可以尝试在堆内存中创建一个数组。

int *tab = new int[nval];

但使用后必须释放它。

delete[] tab;