lvalue ：An object is a region of storage that can be examined and stored into.An lvalue does not necessarily permit modification of the object it designates： eg
An array type
An incomplete type
A const-qualified type
An object is a structure or union type and one of its members has a const-qualified type
The term rvalue refers to a data value that is stored at some address in memory. An rvalue is an expression that cannot have a value assigned to it.