关于左右值的问题

来源:6-10 CPP程序的存储区域划分

bingkong

2020-02-28

为什么说++cp做左值的时候就没有一个专门的空间去存储
而*++cp的时候那个空间就存在了?不是都没有分配吗?
老师我也同样的问题,你回答的这个问题我还是没有明白

写回答

1回答

quickzhao

2020-02-28

++cp表达式的结果是cp地址增值后的一份拷贝,这份拷贝本身没有明确的存储位置,只能作为值作为右值;

*++cp则是增加了间接访问,所以它得到的是ch后面那个地址值,有实际的存储位置,可以作为左值。

0
0

重学C++ ,重构你的C++知识体系

一部大片,一段历史,构建C++知识框架的同时重塑你的编程思维

3884 学习 · 1103 问题

查看课程