COHERENT manpages
This page displays the COHERENT manpage for lvalue [Definition].
List of available manpages
Index
lvalue -- Definition An lvalue is an expression that designates a region of storage. The name comes from the assignment expression e1=e2;, in which the left operand must be an lvalue. An identifier has both an lvalue (its address) and an rvalue (its contents). Some C operators require lvalue operands; for example, the left operand of an assignment statement must be an lvalue. Some operators give lvalue results; for example, if e is a pointer expression, *e is an lvalue that designates the object to which e points. A variable can be used as an lvalue, whereas a constant cannot. For example, you cannot say 6 = (foo+bar); A pointer is a variable, and can be manipulated within limits. An array name, however, is a constant and cannot be altered legally. Thus, the code int foo[10]; int *bar; foo = bar; will generate an error message when you attempt to compile it, whereas int foo[10]; int *bar; bar = foo; will not. The following example shows the use of both an lvalue and a rvalue: int i, *ip; ip = &i;/* ip is an lvalue, i and &i are rvalues */ i = 3; /* i is an lvalue, 3 is an rvalue */ *ip = 4; /* *ip is an lvalue, 4 is an rvalue */ See Also Programming COHERENT, rvalue ANSI Standard, §6.2.2.1