p1=&a与*p=n这两个等式相等吗
含义有什么不同吗
求指点
1条回答 默认 最新
- Xunlan_ 2021-12-06 18:21关注
你这a和n是啥呀?
p1=&a是把a的地址存到p1中
*p=n是将p指向的地址中的值赋值为n
二者最大的区别在于,前者存地址,后者存值:int a=123; int *p1 , *p2; p1=&a; *p2=a; a=456; printf("*p1=%d,*p2=%d\n",*p1,*p2);
*p1=456,*p2=123
由于p1存的是a的地址,所以a更改p1也更改
而p2指向的是随便一个位置,这个位置的值被改成a,当a被更改时,这个位置不会改,可以这么理解:int a=123, *p2; int x=a; p2=&x;//当然,实际上p2是计算机随意分配的位置
解决 无用评论 打赏 举报
悬赏问题
- ¥15 pcl运行在qt msvc2019环境运行效率低于visual studio 2019
- ¥15 MAUI,Zxing扫码,华为手机没反应。可提高悬赏
- ¥15 python运行报错 ModuleNotFoundError: No module named 'torch'
- ¥100 华为手机私有App后台保活
- ¥15 sqlserver中加密的密码字段查询问题
- ¥20 有谁能看看我coe文件到底哪儿有问题吗?
- ¥20 我的这个coe文件到底哪儿出问题了
- ¥15 matlab使用自定义函数时一直报错输入参数过多
- ¥15 设计一个温度闭环控制系统
- ¥100 rtmpose姿态评估