Re: The result of ++ is not an lvalue?
- From: Eric Sosman <Eric.Sosman@xxxxxxx>
- Date: Mon, 21 May 2007 17:53:31 -0400
Old Wolf wrote On 05/21/07 17:31,:
On May 21, 2:18 am, Eric Sosman <esos...@xxxxxxxxxxxxxxxxxxx> wrote:
No. *(any_valid_pointer_expression) is an lvalue, whatever
the status of any_valid_pointer_expression itself.
Except when it doesn't designate an object (e.g. if
the any_valid_pointer_expression is pointing one off
the end of an array).
One thing about c.l.c. is that verbal shortcuts always
catch up with one ... I used "valid" suggestively rather
than precisely, and dangitall if'n somebody didn't call me
on it.
Another way a perfectly good pointer value can fail to
be "valid" in my imprecise sense is to be a pointer to an
incomplete type, e.g., a `void*' or a `struct opaque*'.
Such a pointer can be perfectly well-defined, useful, and
a model citizen in every way, yet not be capable of yielding
an lvalue.
And if somebody nit-picks that `struct opaque' might
not be an incomplete type, I'm gonna boot up my DS9K and
do some DAMAGE!
http://dialspace.dial.pipex.com/town/green/gfd34/art/
--
Eric.Sosman@xxxxxxx
.
- References:
- The result of ++ is not an lvalue?
- From: lovecreatesbea...@xxxxxxxxx
- Re: The result of ++ is not an lvalue?
- From: Eric Sosman
- Re: The result of ++ is not an lvalue?
- From: Old Wolf
- The result of ++ is not an lvalue?
- Prev by Date: Re: Use of memcpy() to transfer from memory to a variable
- Next by Date: Re: PC-Lint in Eclipse ?
- Previous by thread: Re: The result of ++ is not an lvalue?
- Next by thread: Re: The result of ++ is not an lvalue?
- Index(es):
Relevant Pages
|