定义数组是把数组的个数声明为变量。为什么这种声明:int n,a[n]是错误的,该怎么修改呢

求解

第1个回答  2012-11-07
因为n没有初始化值,所以系统无法给数组a[n]分配合适的大小,所以就会报错,n赋值一个足够大的数就可以了
第2个回答  2012-11-07
【】 这个中括号里边只能是常量,这个在学习数组的时候老师应该讲到的 各种书上也应该有
第3个回答  2012-11-07
int n;
cin >> n;
int *a;
a = new int(n);
这样就可以达到动态申请数组大小了
第4个回答  2012-11-12
因为在声明的时候一定要确定好大小。这样才会在编译的时候为数组分配足够的空间
第5个回答  2012-11-07
可以动态分配内存
int* a = new int[n];

最后要记住delete
delete[] a;追问

还没学这么深,不过谢谢了。
还有简单解决办法吗

追答

你要得到一个变量大小的数组,必须要动态分配内存,没其他方法

本回答被提问者和网友采纳

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网