WCM - Das österreichische Computer Magazin Forenübersicht
 

Zurück   WCM Forum > Rat & Tat > Programmierung

Programmierung Rat & Tat für Programmierer

Microsoft KARRIERECAMPUS

Antwort
 
Themen-Optionen Ansicht
Alt 05.12.2003, 00:56   #1
Who-T
Elite
 
Registriert seit: 01.08.2000
Beiträge: 1.395


Who-T eine Nachricht über ICQ schicken
Standard goto in c

da ich derzeit einen code umschreiben muss, der einige dieser gotos enthält und wir gerade eine nette diskussion im lab darüber gehabt haben würd mich eure meinung interessieren.

wann sind gotos in c erlaubt bzw wann sollten sie verwendet werden?

die meinung die ich bis jetzt überall im netz gesehen habe war:
do NOT use them!
____________________________________
Whoever built humanity left in a major design flaw: it was the tendency to bend at the knees.
Who-T ist offline   Mit Zitat antworten
Alt 05.12.2003, 09:04   #2
_m3
Inventar
 
Registriert seit: 24.09.2001
Beiträge: 7.335


Standard

Dann hast Du auf den flaschen Seiten geschaut bzw. nur jemanden "getroffen", das das alte Paradigma einfach nachbetet.

Wie bei fast allem im Leben kommt es auf die Dosis an. Goto richtig eingesetzt ist OK (z.b. Aus einem if oder for schleife springen), mann muß nur immer abwägen, ob es Sinn macht.

Es gibt also kein Generalrezept, man muss selber drüber nachdenken.
____________________________________
Weiterhin zu finden auf http://martin.leyrer.priv.at , http://twitter.com/leyrer , http://www.debattierclub.net/ , http://www.tratschen.at/ und via Instant Messaging auf Jabber: m3 <ät> cargal.org .
_m3 ist offline   Mit Zitat antworten
Alt 05.12.2003, 09:19   #3
hewlett
Inventar
 
Registriert seit: 08.11.2000
Alter: 42
Beiträge: 1.524


Standard

also ganz egal mit welchen Leuten ich über gotos in C gesprochen habe, höre ich immer die selbe Meinung: "nicht verwenden!". Ich persönlich versuch einfach immer diese zu vermeiden. Aber muss ja eh jeder selber wissen!
____________________________________
H.E.W.L.E.T.T.: Hydraulic Electronic Worker Limited to Exploration and Terran Troubleshooting
hewlett ist offline   Mit Zitat antworten
Alt 05.12.2003, 09:47   #4
BULMIST
Jr. Member
 
Registriert seit: 08.01.2003
Alter: 40
Beiträge: 94


Standard

Viva la Spaghetticode ;-)

Na ernsthaft jetzt: Gotos sollten schon vermieden werden, würd ich mal meinen. Coding Style is meiner Meinung nach net viel was Individuelles, sondern sollt schon ernst genommen werden und auch so genutzt werden.
Schau mal im Internet nach dem pdf-File vom Schmaranz. Lehrt an der techn. Uni in Graz und is was Coding Style angeht sehr angesehen. Super zum Nachlesen, auch was generelle Programmierung in C angeht...

Ciao
BULMIST ist offline   Mit Zitat antworten
Alt 05.12.2003, 12:00   #5
brigh
Senior Member
 
Registriert seit: 09.07.2001
Alter: 54
Beiträge: 169


brigh eine Nachricht über ICQ schicken
Standard

Das eine ist halt Theorie und das andere Praxis.

Die Theorie sagt goto ist unübersichtlich und das stimmt meiner Meinung nach auch - meistens.In der Praxis gibt es Fälle in denen goto durchaus brauchbar ist.
____________________________________
Der Hund denkt:\"Sie lieben mich, sie füttern mich, sie kümmern sich um mich. Sie müssen Götter sein!\"
Die Katze denkt:\"Sie lieben mich, sie füttern mich, sie kümmern sich um mich. Ich muss ein Gott sein!\"
Jabber-ID: hexe@cargal.org
brigh ist offline   Mit Zitat antworten
Alt 05.12.2003, 14:41   #6
mudjumper
Veteran
 
Registriert seit: 30.08.2001
Alter: 66
Beiträge: 302


Standard

In der Praxis macht man "schnell" ein goto, und es war in diesem Moment übersichtlich.
Später ist der Code etwas (spaghettimässig) gewachsen und kein Schwein weiss mehr, was und warum man mit dem goto hier- und dorthin springt.

Meine Meinung daher (aus der Praxis mit Assembler und Basic): im Notfall einsetzbar, aber unbedingt mit Kommentar versehen.
____________________________________
mfg. mudjumper.
mudjumper ist offline   Mit Zitat antworten
Alt 05.12.2003, 18:04   #7
brigh
Senior Member
 
Registriert seit: 09.07.2001
Alter: 54
Beiträge: 169


brigh eine Nachricht über ICQ schicken
Standard

Irgendwo im Code herumspringen, das meinte ich mit unübersichtlich. Ich bin da völlig deiner Meinung, da weiß später kein Schwein mehr warum. Ich will auch keine Partei ergreifen für gotos, wenn es eine andere Lösung gibt, dann ist die fast immer besser

Im Errorhandling finde ich es aber zB sinnvoll: Fehler ausgeben und dann zum Programmende springen.
edit: Meine Praxis kommt aber auch nicht aus C sondern aus PLI
____________________________________
Der Hund denkt:\"Sie lieben mich, sie füttern mich, sie kümmern sich um mich. Sie müssen Götter sein!\"
Die Katze denkt:\"Sie lieben mich, sie füttern mich, sie kümmern sich um mich. Ich muss ein Gott sein!\"
Jabber-ID: hexe@cargal.org
brigh ist offline   Mit Zitat antworten
Alt 06.12.2003, 22:11   #8
zed
Inventar
 
Registriert seit: 11.10.2000
Beiträge: 2.458


Standard

aus meiner erfahrung mit C:

gotos so sparsam wie nur irgendwie möglich einsetzen. am besten gar nicht!

das goto ist insofern gefährlich als dass es wildes herumspringen im code ermöglicht und somit strukturieretes programmieren total unterläuft wie eh schon erwähnt wurde.

für ein kleines privates projekt mag das ja noch gehen aber wenns kommerziell wird und sich später auch noch mal wer (sogar man selbst) auskennen soll kannst es komplett vergessen vergessen.


und dass man ein if oder sonstwas "nur" mit einem goto verlassen kann halte ich für ein böses gerücht

____________________________________
Best regards, ZeD

--
\"Quis custodiet ipsos custodes?\" (Juvenal)
--
\"Wer die Sicherheit der Freiheit vorzieht, ist zurecht ein Sklave.\" (Aristoteles)
zed ist offline   Mit Zitat antworten
Alt 07.12.2003, 12:30   #9
Flink
Hero
 
Registriert seit: 29.08.2001
Alter: 57
Beiträge: 904


Flink eine Nachricht über ICQ schicken Flink eine Nachricht über Skype™ schicken
Standard

Zitat:
Original geschrieben von brigh
Im Errorhandling finde ich es aber zB sinnvoll: Fehler ausgeben und dann zum Programmende springen.
Im Errorhandling ist es sinnvoll, ein GOTO in C zu verwenden. Dadurch wird der Code vereinfacht. Denn sonst müßte in allen folgenden IFs und Schleifen permanent abgefragt werden, ob denn nicht vorher schon ein Fehler aufgetreten sei. Es ist auch unschön, wenn in einer Prozedur mehr als 1 return vorkommt. Es gibt hierzu Lösungen der Fehlerbehandlung mittels GOTO über Makros.
____________________________________
Bibel
Flink ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 00:33 Uhr.


Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Forum SEO by Zoints
© 2009 FSL Verlag