www.whkt.net > 如果int A[10],*p;则语句 p=A与语句 等价。

如果int A[10],*p;则语句 p=A与语句 等价。

仅仅是这些语句的话,无法判断p所存储的地址的,不进行初始化的话p里面都是无意义的值

不等价,p表示的是普通产量,*p是指针产量,是两个不同的变量

如果int a[10],*p;则语句 p=a与语句____等价.答案是: p=&a 或者 p=&a[0]

前三个赋值语句都是正确的.选项D是错误的,a是数组,只能对数组元素赋值,要有下标.选D.

答案:D对于数组a[10],a就是该数组的首地址,定义指针p赋值为a,那么a和p的操作基本相同:a[5]=p[5]=*(a+5)=*(p+5),对于D选项,p[5]是个int值,再取*就不对了.

C 变量a的地址值,因为p是个指针型变量,&a表示a的地址,*p=&a表示指针p指向a的地址

*p=&a => *p=a=1*p*=10 => *p=*p*10 => a=a*10=10 p=&b => *p=b=2*p+=5 => b=b+5=2+5=7 a=10 b=7

不一样,int a[10], *p=a; p定义是指向int 的指针, 然后赋值为a,访问数组的元素可以用a[i],等同于p[i]; int (*p)[10]仅仅是声明类型,指向数组的指针,没有赋值,p的值是不确定的.可以这样赋值,你应该可以看出差别了. int (*p)[10] int b[2][10]; p = b; 或者 int a[10];int (*p)[10] ;p =&a;

a[2]

定义中p=&a,则指针p的内容为a的地址,*p=a=100,指针pp再取p的地址,那么*pp=p=&a,**pp=*p=a=100.

网站地图

All rights reserved Powered by www.whkt.net

copyright ©right 2010-2021。
www.whkt.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com