文字常量,如1 ,3.1415926f, 'a' ,"test" 等,是不可寻址的,尽管它的值也存储在机器内存的某个地方,但我们无法访问它们的地址。
变量和文字常量都有存储区,并且都有相关的类型,但变量是可寻址,这是他们的主要区别。
由这个区别可以进一步得出结论,文字常量无法改变(这像句废话,常量当然无法修改),而变量可以修改。
每一个变量,都有两个值与其关联:
- 数据值,存储在某个内存地址中,也被称为对象的右值,意思是被读取的值。文字常量和变量都可用作右值。
- 地制值,也就是存储数据值的内存的地址,也被称为变量的左值,文字变量不能用作左值。
右值,就是变量的值。
有点越描越黑的意思......