请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

关于左右值的问题

为什么说++cp做左值的时候就没有一个专门的空间去存储
而*++cp的时候那个空间就存在了?不是都没有分配吗?

正在回答

1回答

quickzhao 2020-02-27 22:46:58

++cp做左值的时候没有一个类似CP的可见变量区域去存储,++CP只是一个中间的地址值;而*++CP确实在内存中可以找到实在的存储空间来存储变量,就是ch后面的存储空间;本质上不同在于能不能显示的找到存储该变量的寻址位置。

1 回复 有任何疑惑可以回复我~
  • 感觉还是不是理解
    回复 有任何疑惑可以回复我~ 2020-02-28 13:46:11
  • quickzhao 回复 bingkong #2
    ++cp只是中间状态值,如果没有取间接访问*,并不存在实体的存储空间,所以不能做左值。
    回复 有任何疑惑可以回复我~ 2020-02-28 14:13:10
  • 提问者 dark铭 #3
    可以理解为++cp做左值的时候没有一个标号为++cp的空间去存储要为++cp所赋的变量吗?所以不能做左值?
    回复 有任何疑惑可以回复我~ 2020-02-28 16:10:34
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信