×
The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.
On 04/03/2010, at 6:26 AM, Dennis Lovelady wrote:
Hence the need for different operators. This feature is highly
exploited in
statements like:
if ((fp=fopen(szFilename, "r")) == NULL) { // handle error...
The above assigns the result of fopen to fp... and then tests fp
against a
value of NULL.
But only if you get the parentheses correct otherwise it behaves quite
differently. In this specific case the alternatives fail to compile
but there are many examples of C programmers performing an
unintentional assignment in a comparison where the compiler is quite
happy with such a construct and the problem is not found until a
specific set of circumstances occur. For example;
if ( a = b )
will be true in all cases except where b happens to be 0, 0x00, or
null. And what did the programmer mean by:
if (a = b != c )
I wonder? Yet another argument in favour of NOT supporting assignment
in comparisons and in fact one of the things a decent Lint checker
will flag. Without such support we'd have to write:
fp = fopen( szFilename, "r" ); // assignment
if ( fp = NULL ) { // equivalence
Wow, that's so much less concise than the alternative I think I can no
longer stomach any programming language that doesn't allow assignment
within if-tests. (That was sarcasm for those of you who missed it.)
Not something I'd want to see added to RPG--even PL/1, that polymorph
of syntax, did not accept assignment in a comparison which to my mind
lends further weight that it's a bad idea.
Regards,
Simon Coulter.
--------------------------------------------------------------------
FlyByNight Software OS/400, i5/OS Technical Specialists
http://www.flybynight.com.au/
Phone: +61 2 6657 8251 Mobile: +61 0411 091 400 /"\
Fax: +61 2 6657 8251 \ /
X
ASCII Ribbon campaign against HTML E-Mail / \
--------------------------------------------------------------------
As an Amazon Associate we earn from qualifying purchases.