问题:
[单选] 下面的语句中错误的是( )。A . int a=5;int x[a];
B . eonst 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是错误的定义方法。
下面的语句中错误的是( )。
问题:
[单选] 下面的语句中错误的是( )。A . int a=5;int x[a];
B . eonst 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是错误的定义方法。