A-A+

已知:int n=10;那么下列语句中错误的是A.int*p=new long[n];B.i

2022-08-05 21:19:48 问答库 阅读 172 次

问题详情

已知:int n=10;那么下列语句中错误的是
A.int*p=new long[n];
B.int p[n];
C.int*p=new long(n);
D.int p[10];请帮忙给出正确答案和分析,谢谢!

参考答案

正确答案:B
解析:本题考核指针、数组和new运算符。运算符new用于动态申请存储空间,它的操作数为某种数据类型且可以带有初值表达式或元素个数,若带初值,则其表达式为:<指针>=new<类型>(初值),如C选项所示,若带有元素个数,则其语法格式为:<指针>=new<类型>[<元素个数>],如A选项所示。数组定义中数组大小必须为常量,而B选项中的n为一变量所以是错误的。

考点:语句,错误