> > > *p != '\0' && p[strlen(p) - 1] == '[' _still_ will read a byte p[-1].
&& is a McCarthy AND... if the first expression is not true, then by
definition of the C language use of the operator, the second expression
will not be evaluated.
The first expression is not true, so p[strlen(p) - 1] will never be
evaluated.
That's the whole point of having McCarthy operators, aside from lazy
people not using !0 as boolean "true" and wanting their code to still
work for fear of bitwise AND.
Terry Lambert
terry@lambert.org
---
Any opinions in this posting are my own and not those of my present
or previous employers.
Received on Sat Feb 22 13:05:37 1997
This archive was generated by hypermail 2.1.8
: Wed Aug 23 2006 - 12:41:02 EDT
|