问题
单项选择题
下面的语句中错误的是( )。
A. int a=5;int x[a];
B. const int a=5;int x[a];
C. int n=5;int *p=new int[a];
D. const int n=5;int *p=new int[a];
答案
参考答案:A
解析:在C++中定义数组时,数组的范围参数在静态定义时必须是一个常数,而在动态分配内存定义时可以是常数,也可以是一个赋了值得参数。故选项A) 是错误的定义方法。