为您找到"

数组问题 int a[5],*p;p=a;p=&a[0];p=&a;都是什么含义

"相关结果约100,000,000个

C语言int a[5],*p; p=a;和p=&a;的对错问题~希望详细点,谢谢啦

对于int a[5],*p;p=a; 或p=&a[0]是正确的 p=&a严格来说是错误的 首先要搞清楚a与&a的区别:a表示数组首元素的首地址,即元素a[0]的地址;&a表示整个数组的地址。二者的值是相同的,但意义并不一样。正如成...

数组问题 int a[5],*p;p=a;p=&a[0];p=&a;都是什么含义

int a[5];//a是指针常量,表示的是数组首元素的地址,即a=&a[0]。int *p=a;p=&a[0];//因为a=a[0],所以p=a 和p=&a[0]是等价的。p=&a//int *p,p是一个指向int类型的指针,而&a表示的是指向整个...

a[5]是一个一维数组,定义指针变量int *p,那么请问p=a与p=&a的区别是...

在数组中,数组名表示首地址常量。a等同于&a[0]。所以p=a。就是p指向a首地址。p=&a是错的,a已经是地址里。可以写p=&a[0]。

若有定义语句int a[5], *p=a;,则对a数组元素的正确引用是什么 A *&...

正确答案是:D &a[5]就是a[5],下标越界了 a就是a[0],a[0]+2不是对数组元素的正确引用 同理,*(p+5)就是a[5],下标越界了 而* (a+2)就是a[2]

若定义int a[5],*p=a;则正确引用数组元素的是 A*&a[5] B*a+2 C*(p...

则*a+2为a[0]+2,不是a[2],错误 C选项中*(p+5)p+5=a+5为a[5]的地址 (p+5)为a[5],如同A中,数列中没有a[5]这个元素,错误。D选项中,*(a+2)a+2为a[2]的地址 (a+2) ==a[2]与a[2]...

C语言 int 是a[5],*p;定义后,p=a[2]+2为什么不合法

先上结论:对于int a[5],*p;p=a; 或p=&a[0]是正确的 p=&a严格来说是错误的 首先要搞清楚a与&a的区别:a表示数组首元素的首地址,即元素a[0]的地址;&a表示整个数组的地址。二者的值是相同的,但意义并不一...

在C语言中,若有 int[5],*p=a;则p+2表示第___个元素的地址。

题目有点小问题哦:int a[5] ;int *p=a 那么p中存放的为数组a的首地址,相当于p=&a[0] ;那么p+2的值为元素 a[2]的地址 ;a[2]是数组 a的第3个元素 ;所以p+2表示第__3__个元素的地址。

若有定义int a[5],*p=a;则正确引用数组元素的是 a *&a[5] b *a+2 c

正确引用数组元素的 是 *(a+2), 它等同 a[2];(p+5) 错在超界了。如果是 *(p+2) 或 *(p+4) 那么也是对的。 *(p+5) 指向 a[5], 按声明,下标最大到 a[4]。&a[5] -- 也是下标超界 ...

若有定义:int a[5],*p=a; 则对a数组元素地址正确引用的是( )。 &a...

也就是a[0]的地址),p+2就是a[2]的地址,相当于&a[2]。&a[5]是错的,访问越界了,数组元素最后一个是a[4]。a表示数组的首地址,本身是地址常量,不能赋值。所以a++是错了。&a也是错的,a本身就是地址。

...int a[5],*p=a; A. *&a[5] B. a+2 C. *(p+5) D. *(a+2)_百 ...

D正确,选D。因为:A:语法合法,但[5]越界了。B:a+2是地址,不是元素。C:与A一样,只是指针写法,p+5越界了。
1 2 3 4 5 6 7 8 9

相关搜索