左值与右值的区别
2016-08-22 00:29
239 查看
定义:左值与右值的定义在于一个赋值等号,赋值等号左边成为左值,等号右边成为右值
左值(L-value):表示存储在计算机内存的对象,可寻址,相当于地址值
右值(R-value):代表的为真实值,可读,即数据值
因为左值是一个地址值,因此可以对左值进行赋值操作,而右值本身就是同一个数据值,就不存在对一个数据值就行赋值的操作。
例如:
int a,b;
a=5;//为合法的操作,因为a是个地址值;
b=a;//这个也是个合法操作,在这里b为地址值,a取其数据值即5(注意这里不是取地址值,因为a是作为一个右值)
5=5;//这是一个非法操作,因为左值是个数据值,右值也是个数据值
转载出处:http://baike.baidu.com/view/9489098.htm
左值(L-value):表示存储在计算机内存的对象,可寻址,相当于地址值
右值(R-value):代表的为真实值,可读,即数据值
因为左值是一个地址值,因此可以对左值进行赋值操作,而右值本身就是同一个数据值,就不存在对一个数据值就行赋值的操作。
例如:
int a,b;
a=5;//为合法的操作,因为a是个地址值;
b=a;//这个也是个合法操作,在这里b为地址值,a取其数据值即5(注意这里不是取地址值,因为a是作为一个右值)
5=5;//这是一个非法操作,因为左值是个数据值,右值也是个数据值
转载出处:http://baike.baidu.com/view/9489098.htm
相关文章推荐
- C标准和C++ 标准对左值/右值的区别
- C 语言中的左值和右值。以及对比数组名和指针取数组元素的区别。
- 在C++中,为什么前自增操作生成左值,后自增操作生成右值?为什么有这样的区别? .
- C语言左值与右值的区别(C语言深度剖析读书笔记一)
- 左值和右值的区别(以a++和++a为例)
- c++中左值与右值的区别
- lvalue rvalue左值右值的区别
- 左值引用和右值引用的区别
- 数组名作为左值和右值的区别
- C++ - 左值(lvalue)引用和右值(rvalue)引用 的 区别
- C++ - 左值(lvalue)引用和右值(rvalue)引用 的 区别
- 在C++中,为什么前自增操作生成左值,后自增操作生成右值?为什么有这样的区别?
- c++中的左值与右值的区别
- 左值右值
- 左值(lvalue)和右值(rvalue)
- 关于C++中左值右值
- 关于i++和++i以及左值,右值
- 关于左值和右值的Q & A
- 关于i++和++i以及左值,右值
- C++左值与右值之间共同与不同点解析