要使语句p=new double[20];能够正常执行,变量p应定义为[ ].C哪儿错了?
要使语句p=new double[20];能够正常执行,变量p应定义为[ ].
A) double p[20]; B) double p;
C) double (*p)[20]; D) double *p;
人气:390 ℃ 时间:2019-12-07 03:28:14
解答
D 是正确答案,不用说什么的吧.
至于C,的解释请看下面的:
数组指针(也称行指针)
定义 int (*p)[n];
()优先级高,首先说明p是一个指针,指向一个整型的一维数组,这个一维数组的长度是n,也可以说是p的步长.也就是说执行p+1时,p要跨过n个整型数据的长度.
如要将二维数组赋给一指针,应这样赋值:
int a[3][4];
int (*p)[4]; //该语句是定义一个数组指针,指向含4个元素的一维数组.
p=a;//将该二维数组的首地址赋给p,也就是a[0]或&a[0][0]
p++; //该语句执行过后,也就是p=p+1;p跨过行a[0][]指向了行a[1][]
所以数组指针也称指向一维数组的指针,亦称行指针.
推荐
猜你喜欢
- 已知函数y=1/根下ax^2-3ax+5 定义域是R求实数a的取值范围
- 甲数的五分之二是150,乙数的150得五分之二,甲乙两数的和是多少?
- (-25)+34+156+(-56)
- 如图,点O是△ABC内的一点,证明:OA+OB+OC>1/2(AB+BC+CA)
- 两根铁丝共长363米,各剪去3米,则第一根的长度等于第二根的1又1/8倍,原来两根铁丝各长多少米?(列式计算)
- 如图所示,同心圆中,大圆的弦AB交小圆于C,D,已知AB=4,CD=2,AB的弦心距等于1,那么两个同心圆的半
- 小红读一本故事书,已读的与未读的页数只比为3比7,如果再读43页,侧已读的与未读的页数之比是为7比2,这
- 已知烯烃、炔烃在臭氧作用下发生反应