Sprung Befehl???
Übersicht

NitroBetreff: Sprung Befehl??? |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo!!!!
Gibt es einen Sprung Befehl??? für diesen Quellcode? BlitzBasic: [AUSKLAPPEN]
|
||
![]() |
Mathias-Kwiatkowski |
![]() Antworten mit Zitat ![]() |
---|---|---|
ja gibt es
BlitzBasic: [AUSKLAPPEN]
|
||
![]() |
Mathias-Kwiatkowski |
![]() Antworten mit Zitat ![]() |
---|---|---|
allerdings müssen wir mal eines festhalten,
sowas wie sprung marke usw.. hindest du in der hilfe siehe www.blitzbase.de du spamst hier mehr wie ich das ist nicht gerade eine meisterleistung, versuch doch erst mal etwas selber rauszufinden, ich helfe dir auch gerne bei fragen, ich habe icq msn aol messenger icq 287245050 msn mathiasamiga@msn.com aol dinslaken1984 aber spam nicht das ganze forum dicht auch wenn du noop bist sollte man sprungmarken machen können ohne weitere hilfe |
||
![]() |
Xaron |
![]() Antworten mit Zitat ![]() |
---|---|---|
Sprünge wie "goto" sind böse. Man kommt völlig ohne aus.
Gruß - Xaron |
||
Cerberus X - Monkey X Reloaded! |
![]() |
Mathias-Kwiatkowski |
![]() Antworten mit Zitat ![]() |
---|---|---|
ja aber wenn ers doch wissen will ![]() |
||
![]() |
Eclipse |
![]() Antworten mit Zitat ![]() |
---|---|---|
ich versteh nicht wieso alle diese sprünge als böse bezeichnen.
IF und ENDIF bestehehn im grunde doch auch aus JMP CMP JA JB blablabla und das sind ja auch sprungbefehle @mathias: http://de.wikipedia.org/wiki/Spam |
||
![]() |
HellfrontBetreff: Goto |
![]() Antworten mit Zitat ![]() |
---|---|---|
Goto wurde früher bei Basic (hat nichts mit Blitz zu tun) benutzt weil man immer nur eine Zeile sah und diese direkt kompieliert wurde. Da man damals Zeilennummer hatte sprang man einfach dorthin wo man etwas nachträglich einfügen wollte und wieder zurück. Das war natürlich auf den ersten Blick ne gute Lösung aber dadurch entstand ein schrecklicher Spaghetti-Code und da man heute mehrere Zeilen sehen und kompilieren kann braucht man goto nicht und es ist auch besser so. Man sollte es sich gar nicht angewöhnen!!! | ||
![]() |
SpionAtom |
![]() Antworten mit Zitat ![]() |
---|---|---|
Es gibt aber auch vereinzelt Fälle, wo ein Goto auch ganz angebracht ist.
Zum Bespiel, wenn man ganz am Ende des Codes angekommen ist. Und das Programm neustarten möchte. Dann finde ich ein goto .start überhaupt nicht "böse" ![]() |
||
MegaTefyt |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
SpionAtom hat Folgendes geschrieben: Es gibt aber auch vereinzelt Fälle, wo ein Goto auch ganz angebracht ist.
Zum Bespiel, wenn man ganz am Ende des Codes angekommen ist. Und das Programm neustarten möchte. Dann finde ich ein goto .start überhaupt nicht "böse" ![]() Da benutzt man eine Schleife... ![]() |
||
![]() |
x-pressive |
![]() Antworten mit Zitat ![]() |
---|---|---|
LoL - wer Befehle in "gut" oder "böse" trennt, beschneidet ja sein eigenes Werkzeug. Man kann alles irgendwann einmal brauchen, kommt nur darauf an, wie man es einsetzt.
Man kann GOTO auch inerhalb einer Funktion benutzen -was in einigen Situationen super-hilfreich und effizienter/sicherer als das rekursive Aufrufen der Funktion ist. |
||
• BLITZ SHOWCASE:
PARTICLE CANDY • PARTICLE CANDY FOR iPHONE • SPRITE CANDY • DON'T GET ANGRY! 2-3 • CLICK CLACK XL |
![]() |
Hellfront |
![]() Antworten mit Zitat ![]() |
---|---|---|
@x-pressive Wann soll denn Goto besser sein? Ich kenn nur fälle wo goto auf den ersten Blick viel leichter aussieht aber nach kurzem nachdenken schon ersetzt (effizienter) werden kann. | ||
![]() |
Xaron |
![]() Antworten mit Zitat ![]() |
---|---|---|
hacker, das würde mich jetzt auch mal interessieren. ![]() Gruß - Xaron |
||
Cerberus X - Monkey X Reloaded! |
![]() |
x-pressive |
![]() Antworten mit Zitat ![]() |
---|---|---|
Hier fand ich's recht nützlich:
Code: [AUSKLAPPEN] Function ReadFiles() Local Dir.TDir, pathID%, file$, i%, j%, old_name$, new_name$ Local path$ = CurrentDir$() + MEDIAPATH$ ;" If Right$ (path$,1) <> "\" And Len(path$) > 3 Then path$ = path$ + "\" If FileType(path$) = 0 Return .AGAIN pathID = ReadDir(path$) Repeat file$ = NextFile$(pathID) If file$ = "" Then Exit If file$ <> "." And file$ <> ".." Then Select FileType(path$+file$) ; IS FILE CASE 1 ; CHECK EXTENSION For i = 1 To 20 If extensions$(i,1) = "" Or extensions$(i,2) = "" Then Exit ; DO SOMETHING... Next ; IS FOLDER CASE 2 Dir = New TDir Dir\name$ = path$ + file$ + "\" ;" End Select End If Forever CloseDir pathID Dir =Last TDir : If Dir <> Null Then path$ = Dir\name$ : Delete Dir : Goto AGAIN End Function Anderes Beispiel: rekursiver Colorcheck in einem Columns-Game (womit man sich eben mit einem GOTO in der Funktion das rekursive Aufrufen ersparen kann). Ich benutzer es aber auch in jedem meiner Games um z.B. nach der Hauptschleife wieder zum Titelmenü zu wechseln oder auch wenn der User den Grafikmodus ändert und ein Grafik-Neustart erforderlich ist. Alles in allem ein Befehl, der sparsam verwendet wird (wenn man's richtig macht) -der aber durchaus zu gebrauchen ist. Oh, und es gibt noch einen kleinen Vorteil: unter gewissen Umständen (ich werde jetzt nicht zum hundertsten mal "in maßen" sagen ) erhöht GOTO die Lesbarkeit komplexerer Codes. Ein RETURN sagt dir nicht, wohin der Compiler springt. Ein GOTO schon. Ich finde das immer so witzig: irgendein Anfänger übertreibt mal mit GOTOs (weil einfach zu benutzen), dann kommt einer, der sagt, das GOTO "böse" sei, um es ihm auszutreiben. Das geht dann so lange von Mund zu Mund bis jeder meint, auf diesem Befehl läge der Fluch des Bösen. ![]() |
||
• BLITZ SHOWCASE:
PARTICLE CANDY • PARTICLE CANDY FOR iPHONE • SPRITE CANDY • DON'T GET ANGRY! 2-3 • CLICK CLACK XL |
- Zuletzt bearbeitet von x-pressive am So, Okt 23, 2005 18:38, insgesamt einmal bearbeitet
gulp |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
wenn man seine codes allerdings gut gliedert ,der versteht ihn sogar ,wenn goto drin ist ![]() |
||
gulp gulp hurra |
![]() |
SpionAtom |
![]() Antworten mit Zitat ![]() |
---|---|---|
MegaTefyt hat Folgendes geschrieben: SpionAtom hat Folgendes geschrieben:
Es gibt aber auch vereinzelt Fälle, wo ein Goto auch ganz angebracht ist.
Zum Bespiel, wenn man ganz am Ende des Codes angekommen ist. Und das Programm neustarten möchte. Dann finde ich ein goto .start überhaupt nicht "böse" ![]() Da benutzt man eine Schleife... ![]() Klar ist Goto ein Befehl, der immer ersetzt werden kann. Aber trotzdem ist es nicht gleich in jedem Fall unübersichtlicher. Also die Blitzmacher werden sich schon was dabei gedacht haben, nicht auf Goto zu verzichten. Und nochmal zu meinem Beispel: ein goto .Start ist doch viel leserlicher als ein Wend Aber jeder hat sowieso seinen eigenen Stil. Und solange er damit zurecht kommt (und das Goto nicht nur aus Bequemlichkeitsgründen einsetzt), weiß ich gar nicht, warum sich einige darüber aufregen. 8) |
||
MegaTefyt |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ähm, nicht wenn du vernünftig einrückst. | ||
![]() |
Eclipse |
![]() Antworten mit Zitat ![]() |
---|---|---|
und wie siehts mit geschwindigkeit aus? (so ne nanosekunde kann ganz schön viel ausmachen^^) | ||
![]() |
Hellfront |
![]() Antworten mit Zitat ![]() |
---|---|---|
x-pressive hat Folgendes geschrieben: Ich finde das immer so witzig: irgendein Anfänger übertreibt mal mit GOTOs (weil einfach zu benutzen), dann kommt einer, der sagt, das GOTO "böse" sei, um es ihm auszutreiben. Das geht dann so lange von Mund zu Mund bis jeder meint, auf diesem Befehl läge der Fluch des Bösen. ![]() ich gebs ja zu da hast du schon recht aber wenn man es einmal benutzt könnte man es ja nocheinmal benutzen oder nochmal oder vielleicht nur noch darauf zurückgreifen? Außerdem ist goto bei altprogrammieren wirklich nicht gut angesehen (ich denke die schauen auf die gute alte Basic zeit zurück^^) Die Online Hilfe sagt volgendes (Speedoptimierung Tut): Zitat: #26 - Programmsprung Vermeide Programmsprünge mit Goto, Gosub und Function. Je weniger, desto besser lautet hier die Devise. Dadurch kann aber die Größe des Quellcodes steigen. aber auch :(auch wenns nicht direkt goto ist) Zitat: #25 - Gosub statt Function Der Befehl Gosub ist wesentlich schneller als Function. Der Unterschied ist sogar sehr gewaltig. Darum nehmt besser Gosub. Dies kann aber oft zu unübersichtlichen Programmen führen. mach es jeder wie er will ich werd die Leute immer noch auf s goto hinweisen bis es völlig ausgestorben ist *fg* |
||
![]() |
Xaron |
![]() Antworten mit Zitat ![]() |
---|---|---|
hacker3110 hat Folgendes geschrieben: #25 - Gosub statt Function
Der Befehl Gosub ist wesentlich schneller als Function. Der Unterschied ist sogar sehr gewaltig. Darum nehmt besser Gosub. Dies kann aber oft zu unübersichtlichen Programmen führen. Wobei das totaler Blödsinn ist. Gosub ist mitnichten wesentlich schneller als Function. Von einem "gewaltigen Unterschied" kann keine Rede sein. Gruß - Xaron |
||
Cerberus X - Monkey X Reloaded! |
![]() |
Jan_Ehemaliger Admin |
![]() Antworten mit Zitat ![]() |
---|---|---|
goto ist tierrichst schnell. | ||
between angels and insects |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group