[net.lang.c] Suggestion to enhance code readability

mbr@aoa.UUCP (Mark Rosenthal) (08/23/85)

Although our site has been receiving articles for the past few months,
articles posted to the net have not been getting distributed until recently.
The following is a reposting of an article I sent out quite some time ago.
I believe it never made it to the net at large.  Apologies if you have seen
this before.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Alexis Dimitriadis (alexis @ reed) writes:

>   Expressions like "while (var++) ;" introduce problems that take
> (bitter) experience before they can be handily detected, even if the
> reader is familiar with the semantics of the expression.  That is the
> real reason it takes a seasoned C programmer to debug seasoned C code.

Since every simple C statement ends with a ";", it is easy to misread
the ";" in the above as a terminator for the while statement, rather
than a terminator for a null statement controlled by the while.  Placing
the ";" on the same line as the while makes this misinterpretation very
likely.  That is why I came up with the following (equivalent) construction,
which I have been using for several years.  I believe it enhances readability.
But then, I have weird tastes.

        while (var++)
            { }


-- 

	Mark of the Valley of Roses
	...!{decvax,linus,ima,ihnp4}!bbncca!aoa!mbr