An object
is a manipulatable region of storage; an
lvalue is an expression
referring to an object. An obvious example of an lvalue expression is
an identifier. There are operators which yield lvalues: for examples,
if E
is an expression of pointer type,
then *E
is an lvalue expression
referring to the object to which E
points. The name ``lvalue'' comes from
the assignment expression E1 = E2
in which the left operand E1
must be
an lvalue expression. The discussion of each operator below indicates
whether it expects lvalue operands and whether it yields an lvalue.
An object can be any one of the following: