首页 > 试题广场 >

设有语句:int*p[10];,下面哪一个描述是正确的?

[单选题]
设有语句:int*p[10];,下面描述正确的是()
  • p是指向数组中第10个元素的指针
  • p是具有10个元素的指针的数组,每个元素是一个int型指针
  • p是指向数组的指针
  • P[10]的表示数组的第10个元素的值
推荐
B。考察的是指针数组数组指针的区别。
  • 数组指针:定义 int (*p)[n]; 本质上是指针,p是一个指针,指向一个整型的一维数组,这个一维数组的长度是n,也可以说是p的步长。
  • 指针数组:定义 int *p[n]; 本质上是数组,有n个指针类型的数组元素。
根据题干int*p[10] 说明是一个指针数组,有10个指针类型的元素,每个元素是一个int型指针
编辑于 2019-08-28 14:24:22 回复(0)
选B
int* prt[]是指针数组,ptr[]存在的是地址。
另外,int (*ptr)[] 是指向数组的指针。
发表于 2019-08-27 15:27:58 回复(1)
选B
因为[] 的优先级高于*,所以int*p[10] 是数组,且数组里面包含10个元素,每个元素是int *类型的指针。下面逐一分析:
A,错误,int*p[10]是数组,不是指针;
B,正确;
C,不是指针,是数组,里面的元素是指针;
D,*p[10]应该是元素的值,p[10]只是一个指针;
发表于 2019-08-28 11:11:10 回复(1)
p先跟【】结合,说明p是一个数组,然后和*结合,说明数组存放的是指针,在和int结合,说明存放的是指向int的指针
发表于 2019-08-27 16:59:29 回复(0)
首先看优先级,[]的优先级高于*,因此p是一个具有十个元素的数组,每个元素的类型是int*类型
,因此答案显而易见了
发表于 2019-08-27 16:20:08 回复(0)
hh
发表于 2021-08-10 14:52:56 回复(0)
[]优先级高于*
发表于 2023-05-14 17:00:51 回复(0)
指针数组和数组指针
发表于 2023-02-27 16:41:20 回复(0)
[]优先级高于*
发表于 2022-10-18 10:14:46 回复(0)
选B.
显而易见。
发表于 2019-08-27 17:24:21 回复(0)