Types for lvalues
const and volatile are part of an identifier's type,
not its storage class.
they are peculiar in that they are often removed from the top-most
part of the type.
This occurs when an object's value is fetched in the evaluation
of an expression --
exactly at the point when an lvalue becomes an rvalue.
(These terms arise from the prototypical assignment
in which the left side must still refer directly to an object
and the right side need only be a value
Therefore, only expressions that are lvalues can be qualified by
const or volatile or both.
Type qualifiers in derived types
Using const and volatile
© 2003 Caldera International, Inc. All rights reserved.
SCO OpenServer Release 5.0.7 -- 11 February 2003