小白求指教! 2022-08-08 15:04 采纳率: 80%
浏览 71
已结题

*p=&i 和 p=&i 有啥区别啊

问题遇到的现象和发生背景

*p=&i 和 p=&i 有啥区别啊?人已经蒙了

  • 写回答

7条回答 默认 最新

  • 私房菜 移动开发领域优质创作者 2022-08-08 15:42
    关注

    看到这个问题,可能你对指针还不是很了解。
    先来看下这个 int a = 10;
    你在使用的时候直接使用a 就可以,a 就是10,也就是你在运算的时候,a 都会用10 替代掉,说白了,就关心值,不关心a还是b,只要有值就行;
    。。。
    明白上面就好办了。。

    int *p;
    这里定义了一个指针变量,说白了, 就是个变量,只不过这个变量是指向一个内存地址,例如0x1234。
    同样的,在直接使用p 的时候,都会用p 指向的地址代替,将p 都使用0x1234 代替;
    那如果我想看到地址里面存了什么值呢?
    *p,表示你指向的那个内存地址里面存的什么值。。
    回到你的问题,
    *p = &i;就是指向的那个内存地址里面的那个值要换一换啦,换成了什么?换成了i 的地址了;
    p = &i;上面说到p 就代表指向的那个地址,例如0x1234,但是这里0x1234 要换一换啦,换成什么?换成了i 的地址,例如0x3456,以后使用p 的地方都换成0x3456
    明白了否?

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(6条)

报告相同问题?

问题事件

  • 系统已结题 8月18日
  • 已采纳回答 8月10日
  • 创建了问题 8月8日

悬赏问题

  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
  • ¥500 火焰左右视图、视差(基于双目相机)