猿问

C++二维数组定义出现问题.

char choice;
int x,y;
cin>>choice;
if(choice=='1'){
x=5;
y=8;}
else if(choice=='2'){
x=10;
y=10;}
else if(choice=='3'){
x=25;
y=25;
}
char dt[x][y]
你们懂我意思吧
但是出来俩错误
cannot allocate an array of constant size 0.
expected constant expression.
**


波斯汪
浏览 738回答 6
6回答

繁花不似锦

有的编译器不支持运行时分配数组大小的写法。那么就要用char * dt = new char[x][y];或者 new char[x * y]或者换支持的编译器

墨色风雨

不能用变量定义数组大小

白板的微信

数组的定义不应当出现变量,应该用常量或常量表达式来确定数组的大小,或者定义指针灵活的实现数组的存储和表示

潇潇雨雨

静态数组下标不可以为变量,想实现动态控制数组大小可以用new动态申请空间

四季花海

用常量来定义数组长度,或者可以写一个动态数组!
随时随地看视频慕课网APP

相关分类

Java
我要回答