On Sun, 12 Jan 2003 14:59:57 EST, Rob Wilkens said:
> In general, if you can structure your code properly, you should never
> need a goto, and if you don't need a goto you shouldn't use it. It's
> just "common sense" as I've always been taught. Unless you're
> intentionally trying to write code that's harder for others to read.
Now, it's provable you never *NEED* a goto. On the other hand, *judicious*
use of goto can prevent code that is so cluttered with stuff of the form:
if(...) {
...
die_flag = 1;
if (!die _flag) {...
Pretty soon, you have die_1_flag, die_2_flag, die_3_flag and so on,
rather than 3 or 4 "goto bail_now;".
The real problem is that C doesn't have a good multi-level "break" construct.
On the other hand, I don't know of any language that has a good one - some
allow "break 3;" to break 3 levels- but that's still bad because you get
screwed if somebody adds an 'if' clause....
Attachment:
pgp289680.pgp
Description: PGP signature
Follow-Ups:
- Re: any chance of 2.6.0-test*?Tomas Szepe
- Re: any chance of 2.6.0-test*?yodaiken
- Re: any chance of 2.6.0-test*?Sean Neakums
- Re: any chance of 2.6.0-test*?Randy Dunlap
- Re: any chance of 2.6.0-test*?Kevin Puetz
- RE: any chance of 2.6.0-test*?Folkert van Heusden
- Re: any chance of 2.6.0-test*?Linus Torvalds
- Re: any chance of 2.6.0-test*?Rob Wilkens
- Prev by Date: Re: any chance of 2.6.0-test*?
- Next by Date: Re: any chance of 2.6.0-test*?
- Previous by thread: Re: any chance of 2.6.0-test*?
- Next by thread: Re: any chance of 2.6.0-test*?
- Indexes:[Main][Thread]