jgk@osc.COM (Joe Keane) (03/17/90)
Here's my biggest C style peeve. For some reason, many C programmers insist on always putting parentheses around return values, even when they're not necessary, which happens to be always. God knows why, but they write `return(2+2);' instead of the obvious and K&R-approved style `return 2+2;'. It's a shame the compiler lets them get away with it, and i think the extra parentheses should be strictly illegal. Unfortunately, for some reason the ANSI committee didn't like this suggestion. Apparently it would break existing code, you know the same code that assumes you can determine whether your program is demand-pages by examining the contents of word 0. So why do people do this? I guess they think return is a function, although you never know what's inside some people's heads. I think they don't understand what a control structure is, and what the parentheses in if, while, and switch statements are for. I wonder how many times they write `break();' or `goto(label);' and scratch their heads trying to figure out what's wrong with the compiler. I know there are a lot of people that do this, so i'm probably putting my life in jeopardy by making this post. I'm sure some of you will be insulted by my criticism of your coding style, and will get all defensive. I've heard all the defenses, like ``it makes it clearer'' (yeah right!), so don't bother posting yours. Just think about it. Thanks. Oh yeah, the second paragraph is completely false.
henry@utzoo.uucp (Henry Spencer) (03/18/90)
In article <2205@osc.COM> jgk@osc.COM (Joe Keane) writes: >Here's my biggest C style peeve. For some reason, many C programmers insist >on always putting parentheses around return values... >So why do people do this? ... Partly because it used to be required, long ago, and partly because most of the other C control structures that contain expressions still require it and so people are used to it. There might also be some PL/I influence on some of the newcomers. -- MSDOS, abbrev: Maybe SomeDay | Henry Spencer at U of Toronto Zoology an Operating System. | uunet!attcan!utzoo!henry henry@zoo.toronto.edu
eric@snark.uu.net (Eric S. Raymond) (03/20/90)
In <1990Mar18.005833.12944@utzoo.uucp> Henry Spencer wrote: > In article <2205@osc.COM> jgk@osc.COM (Joe Keane) writes: > >Here's my biggest C style peeve. For some reason, many C programmers insist > >on always putting parentheses around return values... > >So why do people do this? ... > > Partly because it used to be required, long ago, and partly because most > of the other C control structures that contain expressions still require it > and so people are used to it. There might also be some PL/I influence on > some of the newcomers. I was a `second-generation' C programmer -- I date back to the waning days of V7. I have the quirk Mr. Keane dislikes, and I think it's because it `used to be required' -- but I didn't know that when I was learning, I just emulated the style of the good C code I had around as examples. I use monocase function and variable names and avoid bitfields and enums for the same reason, early habits that have just stuck with me. I suspect the same is true of many C programmers besides myself. No PL/I hypothesis required! My indentation style is still influenced by previous years of Pascal coding, but that's another story... -- Eric S. Raymond = eric@snark.uu.net (mad mastermind of TMN-Netnews)