954,498 Members — Technology Publication meets Social Media
Username:
Password:
Lost login information?
Have something to say? Contribute New Article Reply to this Article

goto statements

can any one highlight the overheads in goto statement

SpS
Posting Pro
599 posts since Aug 2005
Reputation Points: 70
Solved Threads: 32
 

biggest overheads with goto is having your peers laugh at you.Also a goto in a function will make life hard for the optimiser to do its job properly so your function may go unoptimised. It is not particularly dangerous to use but it does have a habit of making code hard to follow. I only ever use it to break out of deeply nested loops where a break statement just wont do and an extra variable with comparisons would be too much overhead or complication. This is probably the only acceptable use for goto and even then most will go with the extra variable solution. In several places where Ive worked a goto is enough to violate the coding standard.

Stoned_coder
Junior Poster
164 posts since Jul 2005
Reputation Points: 19
Solved Threads: 5
 

I have heard gotos are really vln, I wouldn't use them.
but if you must know:

start:
blah blah statments
goto start;

i think.

The_Inferno
Newbie Poster
10 posts since Sep 2005
Reputation Points: 10
Solved Threads: 0
 

Dont use them... i did once in a program and lost beaucoups of points... so i dont recommend it.

jhdobbins
Junior Poster
105 posts since Apr 2005
Reputation Points: 10
Solved Threads: 3
 
Dave Sinkula
long time no c
Team Colleague
5,058 posts since Apr 2004
Reputation Points: 2,780
Solved Threads: 314
 

>biggest overheads with goto is having your peers laugh at you.
Amen. Of course, I would say that the biggest overhead at first is constantly having to defend your decision to use a goto. Even if you use it intelligently, there are armies of the ignorant waiting to flame you for it because "goto is evil".

But it gets worse. The more your peers respect you, the less they'll try to second guess your decisions and the more they'll try to emulate you. Therein lies the danger of goto because even if you know how to use it, and when to use it, a bunch of people who hear how "Narue's code is awesome" and see how that "awesome code" used goto will probably use it too, but not in the right way. ;)

Of course, that still doesn't stop me from using goto when I feel the need, even if I don't feel the need often.

Narue
Bad Cop
Administrator
15,460 posts since Sep 2004
Reputation Points: 6,464
Solved Threads: 1,401
 

my company forbids use of goto, and it is strictly enforced during peer review. Yes, programmers are NOT free to just code any way they wish -- there are coding standards and the code is periodically reviewed to insure those standards are followed. There is absolutely never justification for its (goto) use.

Ancient Dragon
Retired & Loving It
Team Colleague
30,049 posts since Aug 2005
Reputation Points: 5,662
Solved Threads: 2,343
 

>my company forbids use of goto, and it is strictly enforced during peer review.
I'm lucky enough that my company trusts its programmers to know what they're doing. We enforce good code through the senior programmers teaching and setting a good example, and it works amazingly well. Naturally there are coding standards, but they're far more lenient than most places and meant primarily for consistency between modules. Still, you're unlikely to find any code with a goto. ;)

Narue
Bad Cop
Administrator
15,460 posts since Sep 2004
Reputation Points: 6,464
Solved Threads: 1,401
 

This article has been dead for over three months

Post: Markdown Syntax: Formatting Help
You