问题
单项选择题
下面的语句中错误的是()。
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)是错误的定义方法。