p已定义是指针,在赋值的时候, *p=a[0] 和 p=&a[0] 效果一样吗
答案:6 悬赏:50 手机版
解决时间 2021-11-19 09:44
- 提问者网友:焚苦与心
- 2021-11-19 04:10
p已定义是指针,在赋值的时候, *p=a[0] 和 p=&a[0] 效果一样吗
最佳答案
- 五星知识达人网友:三千妖杀
- 2021-11-19 04:15
完全不一样。举例:
int a[2]={1,2};
int b=3,*p=&b;
*p=a[0]; //这个等价于b=a[0];
p=&a[0]; //这个表示p由原来指向b改为指向a[0]。
int a[2]={1,2};
int b=3,*p=&b;
*p=a[0]; //这个等价于b=a[0];
p=&a[0]; //这个表示p由原来指向b改为指向a[0]。
全部回答
- 1楼网友:山河有幸埋战骨
- 2021-11-19 07:36
不一样,第一个是元素赋值,第二个是指针p指向a的地址
- 2楼网友:woshuo
- 2021-11-19 07:14
不一样
第一个是将一个值赋给p所指向的地址, p++后指向的是一个未知地址
第二个是将p指向数组a的地址 p++ 后指向的是a[1]的地址
第一个是将一个值赋给p所指向的地址, p++后指向的是一个未知地址
第二个是将p指向数组a的地址 p++ 后指向的是a[1]的地址
- 3楼网友:煞尾
- 2021-11-19 05:58
不一样,前一个是单元里的值进行赋值,后面一个是地址赋值,修改了P所指向的地址
- 4楼网友:洎扰庸人
- 2021-11-19 04:42
这是两码事,前一个是赋值,后面这个是取地址,
前一个*p=a[0]是把a[0]的值,填写到指针p所指向的地方
p=&a[0]; 是让指针p指向a[0] ,区别老大了
前一个*p=a[0]是把a[0]的值,填写到指针p所指向的地方
p=&a[0]; 是让指针p指向a[0] ,区别老大了
- 5楼网友:英雄的欲望
- 2021-11-19 04:22
*p=a[0] 和 p=&a[0]
不一样!
虽然赋值后,*p的值都是a[0],但是
前者不能执行p++操作,后者可以!
不一样!
虽然赋值后,*p的值都是a[0],但是
前者不能执行p++操作,后者可以!
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯