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....
This archive was generated by hypermail 2b29 : Wed Jan 15 2003 - 22:00:41 EST