设int(*p)[4];,则p的含义是

设int(*p)[4];,则p的含义是( )
A.指向整型变量的指针数组
B.指向4个整型变量的函数指针
C.4个指向整型变量的指针变量
D.指向具有4个整型元素的一维数组的指针

*p为什么在括号里呢

--------------------

mark cboomup

第1个回答  2008-11-08
呵呵 首先 答案是D 首先说一下,int *p的意思是指向整型变量的指针变量
这一般用于一维数组,而二维数组用的是(*p)[4],指向具有4个整型元素的一维数组的指针 例如2个数组 int a[5],b[5][5]此时,a和b 表示的意思是不一样
a表示的是数组a的起始位置 就是a[0]的位置,而b表示的是b[0]的位置 ,就是第一个一维数组的地址 ,它包含4个元素的
由于[]的结合高于* 所以必须用括号,否则就是一个变量了本回答被提问者采纳
相似回答