左值和右值
什么是左值
左值是用来表示一个在内存中具有内存空间的对象的表达式。
右值指的是在内存中不具有内存空间,仅仅代表一个数值。
一般来说,左值可以出现在赋值运算符的左边,也可以在赋值运算符的右边。如i但是右值不可以出现在赋值运算符的左边。
左值的特点
- 左值是一个可改变的值,被const修饰的变量不可以为左值。
- 在内存中具有地址空间。
实例:
如果 array 已被声明为数组,而 ptr 被声明为指针变量
![在这里插入图片描述](https://img-blog.csdnimg.cn/6a90ec1f73b246d090e7e43295cb520c.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5oao5oao6b2Q5aSp5aSn5Zyj,size_18,color_FFFFFF,t_70,g_se,x_16)
参考链接
i++与++i
- i++ 等价于 先使用 i ,然后i = i + 1.
- ++i 等价于 先使用 i + 1, 然后 i = i + 1.