Guten morgen,
der goto-Sprungbefehl gilt heute bei vielen Programmierern als verpönt, da es keinen einzigen Grund gibt, diesen Befehl zu benutzen. Mit der goto-Labelanweisung kann ein genaues Sprungziel festlegt werden. Es ist dabei egal, ob das Sprungziel vor oder nach dem goto-Statement im Programm aufgeführt wird. Einzige Bedingung ist dabei, dass die Sprunganweisungen und Marken in derselben Funktion liegen müssen.
Warum also ist goto so verpönt? Aus Performancegründen! Durch goto wird der normale Ablauf des Programms einfach unterbrochen. Ein weiterer Grund, goto nicht zu verwenden: Wenn mit goto in einen Anweisungsblock gesprungen wird, der lokale Variablen beinhaltet, ist das Verhalten systemabhängig. Es gibt wohl kaum ein Problem, das sich nicht auch ohne goto lösen lässt. Man kann sagen, dass ein goto mit einem Sprung nach vorne nichts ausmacht. Von einem goto, das aber zurückspringt, kann nur abgeraten werden. In solch einem Fall (zurückspringen) kann z.B. die do-while-Schleife als bessere Alternative verwendet weden.
Ich persöhnlich benutze auf keinen Fall ein goto, egal in welcher Sprache. Es gibt einfach keinen Grund, diesen Befehl einzusetzen.
Oh, ich merke gerade, dass das nicht richtig ist. Ich benutze ihn doch. Wenn in Bascom ein Reset des Programms durchgeführt werden soll/muss, wird das mit goto 0 gemacht. Dabei werden aber auch alle Vatiablen zurück gesetzt und ist somit meiner Meinung nach ein Ausnahmefall.
Durch goto wird ein Code unstrukturiert und unleserlich.
Peter
Lesezeichen